-
There is no need for a --precheck-streams option. We can do the precheck without imposing any penalty, only re-encoding the stream if it fails the first time.
-
This commit adds several API methods that enable control over which types of filters QPDF will attempt to decode. It also adds support for /RunLengthDecode and /DCTDecode filters for both encoding and decoding.
-
This is in preparation for implementing page groups.
-
Add a newline unconditionally before endstream even if a newline was already written as part of the stream data.
-
Be explicit about the need to keep the source QPDF object around.
-
When requested, QPDFWriter will do more aggress prechecking of streams to make sure it can actually succeed in decoding them before attempting to do so. This will allow preservation of raw data even when the raw data is corrupted relative to the specified filters.
-
For non-encrypted files, determinstic ID generation uses file contents instead of timestamp and file name. At a small runtime cost, this enables generation of the same /ID if the same inputs are converted in the same way multiple times.
-
This is a cosmetic change since both are accepted.
-
Detect a missing page range and assume 1-z.
-
s/Controls handing of object streams./Controls handling of object streams./