What's Changed
Version 3.4.0, 2023-02-05
NOTICE: pypdf changed the way it represents numbers parsed from PDF files.
pypdf<3.4.0 represented numbers as Decimal, pypdf>=3.4.0 represents them as
floats. Several other PDF libraries to this, as well as many PDF viewers.
We hope to fix issues with too high precision like this and get a speed boost.
In case your PDF documents rely on more than 18 decimals of precision you
should check if it still works as expected.
To clarify: This does not affect the text shown in PDF documents, even if the text are numbers.
It affects numbers used by the PDF document, e.g. when graphics are drawn on the PDF
or very exact positions are used. Typically, 5 decimals should be enough.
New Features (ENH)
- Enable merging forms with overlapping names (#1553) by @pubpub-zz
- Add 'over' parameter to merge_transformend_page & co (#1567) by @pubpub-zz
Bug Fixes (BUG)
- Fix getter of the PageObject.rotation property with an indirect object (#1602) by @mitchelljkotler
- Restore merge_transformed_page & co (#1567) by @pubpub-zz
- Replace decimal by float (#1563, #1608) by @pubpub-zz
Robustness (ROB)
- PdfWriter.remove_images: /Contents might not be in page_ref (#1598)
Developer Experience (DEV)
Tests (TST)
- Mark reader test as external (#1575) by @dkg
- Unlink test output once successfully written (#1579) by @dkg
New Contributors
- @mitchelljkotler made their first contribution in #1602
Full Changelog: 3.3.0...3.4.0