pypdf
pypdf copied to clipboard
A pure-python PDF library capable of splitting, merging, cropping, and transforming the pages of PDF files
This is the last part of the implementation of issue 3290. It causes the tests to be slow because `named_destinations` is not cached, but I'm leaving that as a separate...
## Explanation We currently do our main testing on Ubuntu and some additional testing on Windows. With #3398 being reported recently, we should evaluate testing on macOS as well. ##...
## Explanation `BooleanObject` currently does not implement the `__bool__` method. This has the side effect that when checking the value of a `BooleanObject`, `BooleanObject.value` has to be used. In general,...
This is an experiment to see how well Github Copilot works The goal of this PR is to make the PageObject easier to understand and maintain. ## For the Reviewer...
## Explanation PDF has support for the so-called "function objects" (PDF 2.0 reference, section 7.10) to perform numerical operations. We currently do not support them, but they might be useful...
## Explanation In https://github.com/py-pdf/pypdf/blob/5252c2f6b3bf76ab3fe0d6a5c6c289a0098d0da3/pypdf/_writer.py#L212-L229 we currently enforce the PDF 1.3 header if incremental mode is not active, with no way to easily access or use the original header. Especially with...
The official Python docs recommend to use the placeholder-based approach for logging instead of f-strings: https://docs.python.org/3/howto/logging.html#logging-variable-data The background is that f-strings will always be evaluated - even if the user...
Recently, PDF/UA aka tagged PDF aka marked content has become mandatory in at least B2C communication in Germany. With this requirement in mind, we should evaluate if this can have...
## Explanation From https://github.com/py-pdf/pypdf/pull/3365#issuecomment-3051571306: > > **Remaining max-complexity greater than 30** > > - pypdf/_writer.py, remove_objects_from_page: 31 > - pypdf/_writer.py, merge: 31 > - pypdf/generic/_data_structures.py, read_from_stream: 34 > - tests/test_page.py,...
Hello, I'm using pypdf to fill out a for and generate a printable pdf. Everything works fine, expcept when I use unicode strings. The text apprears corrupted in the output...