Releases: aescarias/pdfnaut
Releases · aescarias/pdfnaut
v0.3.1
v0.3
0.3 includes major changes that should hopefully improve developer experience when reading PDF files.
- pdfnaut now includes typings for many common PDF dictionaries including the trailer, catalog, outlines, and others. (this change introduces a new dependency,
typing-extensions
, for users of Python 3.11 or earlier) - PdfDocument has been added as a foundation of the high-level API. It allows quick access to common PDF objects (such as pages)
- pdfnaut now adds a new "strict" mode that warns or fails when parsing non-spec-compliant documents. This also means pdfnaut is also more lenient towards these files (given that strict=False).
- Document lexing should be slightly faster for references since we now first check for a digit before invoking regex.
v0.2
This update adds support for encoding and encrypting objects.
Additions:
- All filters (except Crypt) now support encoding.
- Added a decoder for the RunLengthDecode filter
- The security handler was reworked to allow for encryption of objects.
Removals:
- The TIFF predictor function used previously was implemented improperly. It has now been removed.
Fixes:
- The PNG predictor function previously worked on entire samples rather than on bytes, which led to only one of the color components being preserved. This has now been fixed.
0.1.1
A small update that adds two additions
- Incremental updates are now exposed under a new
updates
attribute in the PDF parser. See the docs for info. - An edge case was found when attempting to tokenize an indirect reference at the end of data. This has now been fixed.