python-pypdf
Port variant v13
Summary PDF transformation library (3.13)
Package version 5.5.0
Homepage https://github.com/py-pdf/pypdf
Keywords python
Maintainer Python Automaton
License Not yet specified
Other variants v12
Ravenports Buildsheet | History
Ravensource Port Directory | History
Last modified 12 MAY 2025, 01:46:51 UTC
Port created 03 JUL 2023, 21:37:39 UTC
Subpackage Descriptions
single [PyPI version] [Python Support] [![]](https://pypdf.readthedocs.io/en/stable/) [GitHub last commit] [codecov] # pypdf pypdf is a free and open-source pure-python PDF library capable of splitting, [merging], [cropping, and transforming] the pages of PDF files. It can also add custom data, viewing options, and [passwords] to PDF files. pypdf can [retrieve text] and [metadata] from PDFs as well. See [pdfly] for a CLI application that uses pypdf to interact with PDFs. ## Installation Install pypdf using pip: ` pip install pypdf ` For using pypdf with AES encryption or decryption, install extra dependencies: ``` pip install pypdf[crypto] ``` > **NOTE**: `pypdf` 3.1.0 and above include significant improvements compared to > previous versions. Please refer to [the migration > guide] for > more information. ## Usage ```python from pypdf import PdfReader reader = PdfReader("example.pdf") number_of_pages = len(reader.pages) page = reader.pages[0] text = page.extract_text() ``` pypdf can do a lot more, e.g. splitting, merging, reading and creating annotations, decrypting and encrypting. Check out the [documentation] for additional usage examples! For questions and answers, visit [StackOverflow] (tagged with [pypdf]). ## Contributions Maintaining pypdf is a collaborative effort. You can support the project by writing documentation, helping to narrow down issues, and submitting code. See the [CONTRIBUTING.md] file for more information. ### Q&A The experience pypdf users have covers the whole range from beginner to expert. You can contribute to the pypdf community by answering questions on [StackOverflow], helping in [discussions], and asking users who report issues for [MCVE]'s (Code + example PDF!). ### Issues A good bug ticket includes a MCVE - a minimal complete verifiable example. For pypdf, this means that you must upload a PDF that causes the bug to occur as well as the code you're executing with all of the output. Use `print(pypdf.__version__)` to tell us which version you're using. ### Code All code contributions are welcome, but smaller ones have a better chance to get included in a timely manner. Adding unit tests for new features or test cases for bugs you've fixed help us to ensure that the Pull Request (PR) is fine. pypdf includes a test suite which can be executed with `pytest`: ```bash $ pytest ===================== test session starts ===================== platform linux -- Python 3.6.15, pytest-7.0.1, pluggy-1.0.0
Configuration Switches (platform-specific settings discarded)
PY312 OFF Build using Python 3.12 PY313 ON Build using Python 3.13
Package Dependencies by Type
Build (only) python313:dev:std
python-pip:single:v13
autoselect-python:single:std
Build and Runtime python313:primary:std
Download groups
main mirror://PYPIWHL/a1/4e/931b90b51e3ebc69699be926b3d5bfdabae2d9c84337fd0c9fb98adbf70c
Distribution File Information
2f61f2d32dde00471cd70b8977f98960c64e84dd5ba0d070e953fcb4da0b2a73 303371 python-src/pypdf-5.5.0-py3-none-any.whl
Ports that require python-pypdf:v13
python-psutils:v13 Manipulate PDF and PostScript documents (3.13)