pypdfium2
Python bindings to PDFium
Install
pypdfium2 on PyPI
pip
pip install pypdfium2uv
uv add pypdfium2poetry
poetry add pypdfium2Package facts
| License | BSD-3-Clause, Apache-2.0, dependency licenses (permissive) |
| Python support | supports the current Python release (>=3.6) |
| Install friction | medium — platform-specific wheel |
| Runtime dependencies | none |
| Maintenance | actively maintained — 0 days since the last release |
| Last repo commit | |
| First released | |
| Popularity | one of the top 1,000 most-downloaded packages on PyPI (30-day window, as of 2026-08-13) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-13) |
Evidence: pypdfium2-5.13.0-py3-none-android_23_arm64_v8a.whl; pypdfium2-5.13.0-py3-none-android_23_armeabi_v7a.whl; pypdfium2-5.13.0-py3-none-macosx_13_0_arm64.whl; pypdfium2-5.13.0-py3-none-macosx_13_0_x86_64.whl; pypdfium2-5.13.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl; pypdfium2-5.13.0-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl; pypdfium2-5.13.0-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl; pypdfium2-5.13.0-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl; pypdfium2-5.13.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl; pypdfium2-5.13.0-py3-none-manylinux_2_27_s390x.manylinux_2_28_s390x.whl; pypdfium2-5.13.0-py3-none-manylinux_2_34_riscv64.manylinux_2_39_riscv64.whl; pypdfium2-5.13.0-py3-none-musllinux_1_2_aarch64.whl; pypdfium2-5.13.0-py3-none-musllinux_1_2_armv7l.whl; pypdfium2-5.13.0-py3-none-musllinux_1_2_i686.whl; pypdfium2-5.13.0-py3-none-musllinux_1_2_ppc64le.whl; pypdfium2-5.13.0-py3-none-musllinux_1_2_riscv64.whl; pypdfium2-5.13.0-py3-none-musllinux_1_2_s390x.whl; pypdfium2-5.13.0-py3-none-musllinux_1_2_x86_64.whl; pypdfium2-5.13.0-py3-none-win32.whl; pypdfium2-5.13.0-py3-none-win_amd64.whl
Keywords: pdf, pdfium
About pypdfium2
from the package's own PyPI description — quoted content, verbatim
<!-- SPDX-FileCopyrightText: 2026 geisserml <geisserml@gmail.com> --> <!-- SPDX-License-Identifier: CC-BY-4.0 -->
pypdfium2
<!-- Downloads (image) -->
pypdfium2 is an ABI-level Python 3 binding to PDFium, a powerful and liberal-licensed library for PDF rendering, inspection, manipulation and creation.
It is built with ctypesgen and external PDFium binaries. The custom setup infrastructure provides a seamless packaging and installation process. A wide range of platforms is covered with pre-built packages. Check out our platform support page.
pypdfium2 includes helpers to simplify common use cases, while the raw PDFium API (ctypes) remains accessible as well.
Installation
From PyPI (recommended)
python -m pip install -U pypdfium2
If available for your platform, this will use a pre-built wheel package, which is the easiest way of...
Read as markdown · JSON record · Source repository · Homepage · Docs
AI interpretation — verify before relying
AI-generated interpretation of the package facts above; every digit, version, license, or vulnerability id it cites is grounded in the facts already shown on this page
pypdfium2 is a Python binding to PDFium that enables PDF rendering, inspection, manipulation, and creation through a ctypes interface to the underlying C library.
Medium install friction due to platform-specific binary wheels and potential compilation fallback. Pre-built wheels cover multiple platforms, but setup falls back to system PDFium or source build if unavailable. No runtime dependencies required by default.
Dual-licensed under BSD-3-Clause and Apache-2.0 with additional dependency licenses. Both are permissive, allowing commercial and private use with minimal restrictions, though attribution and license notices must be retained.
Usage
pip install pypdfium2
import pypdfium2 as pdfium
pdf = pdfium.PdfDocument.new()
PDFium binary must be available—either pre-built (bundled in wheel), from system library, or built from source; requires Python ≥3.6.
Verdict: pypdfium2 is a stable, actively maintained PDF library (Production/Stable, 807 GitHub stars, released 2026-08-13) with broad platform coverage and zero known vulnerabilities. Permissive licensing and no mandatory runtime dependencies make it low-friction for most use cases, though binary availability varies by platform.
Needs verification
- Whether pre-built wheels are available for your specific platform/architecture combination
- Performance characteristics compared to alternative PDF libraries for your use case
- Whether optional dependencies (Pillow, NumPy, opencv-python) are needed for your workflow
- Specific API methods and their signatures beyond the basic PdfDocument.new() pattern
Similar packages
permissive · top 100 on PyPI
pdf2imagepermissive · top 1,000 on PyPI
llvmlitepermissive · top 1,000 on PyPI
pymupdfagpl · top 1,000 on PyPI
pbs-installerpermissive · top 1,000 on PyPI
weasyprintpermissive · top 1,000 on PyPI
duckdbpermissive · top 1,000 on PyPI
python-magicpermissive · top 1,000 on PyPI
opencv-pythonpermissive · top 1,000 on PyPI
opencv-python-headlesspermissive · top 1,000 on PyPI