-
The PDF spec only allows UTF-16BE, but most readers seem to accept UTF-16LE as well, so now qpdf does too.
-
This was unintended behavior that was added back for backward compatibility. It is intentionally undocumented.
-
There are codepoints in PDFDoc that are not valid UTF-8 but map to valid UTF-8. We were handling those correctly with bidirectional mapping. However, if those same code points appeared in UTF-8, where they have no meaning, they were left as fixed points when converting to PDFDoc, where they do have meaning. This change recognizes them as errors.
-
Convert loops to use range-based for statements. Simplify the extract_bookmarks function.
-
Remove test for type == /XObject in QPDFObjectHandle::isFormXObject as type value is optional (as per spec 8.10.2). Replace code to test for /Form in QPDFJob::shouldRemoveUnreferencedResources with a call to isFormXObject.
-
Sometimes someone may build only a subset of the documentation. The logic has to be conditional upon whether it exists, not whether it is built, since we pull pre-built docs in for CI installation.
-
If we're opening a PDF file to copy its encryption information or attachments, its version doesn't need to influence the output version.
-
This is to catch pull requests that make changes that would affect automatically generated job files without including those modifications.
-
This comment expands all tabs using an 8-character tab-width. You should ignore this commit when using git blame or use git blame -w. In the early days, I used to use tabs where possible for indentation, since emacs did this automatically. In recent years, I have switched to only using spaces, which means qpdf source code has been a mixture of spaces and tabs. I have avoided cleaning this up because of not wanting gratuitous whitespaces change to cloud the output of git blame, but I changed my mind after discussing with users who view qpdf source code in editors/IDEs that have other tab widths by default and in light of the fact that I am planning to start applying automatic code formatting soon.