Jay Berkenbilt
56b4d5a610
Use val.at instead of val[]
2022-02-22 08:40:49 -05:00
Jay Berkenbilt
f7ac591590
Recognize explicit UTF-8 strings ( fixes #654 )
2022-02-22 08:10:05 -05:00
Jay Berkenbilt
07a2bb332d
Add documentation and release notes around 0 Tf issue
2022-02-22 08:10:05 -05:00
Jay Berkenbilt
3b4b9efd21
Fix autogeneration of job.sums
2022-02-22 08:10:05 -05:00
Jay Berkenbilt
332cb76dd0
TODO: cmake for qpdf 11
2022-02-18 16:41:58 -05:00
Jay Berkenbilt
31b45b0fd4
Fix logic error with Tf when generating appearances ( fixes #655 )
2022-02-18 13:46:35 -05:00
Jay Berkenbilt
3e2109ab37
Remove special case for 0xad for 10.6.2.
2022-02-16 06:52:05 -05:00
Jay Berkenbilt
38d8362c09
Prepare 10.6.2 release
2022-02-15 19:36:39 -05:00
Jay Berkenbilt
74d66a9349
Spell check
2022-02-15 19:36:12 -05:00
Jay Berkenbilt
b63e17fffb
Fix lgtm warning
2022-02-15 19:30:34 -05:00
Jay Berkenbilt
e810fe678a
Fix asymmetry between newUnicodeString and getUTF8Value
2022-02-15 19:22:35 -05:00
Jay Berkenbilt
e35abe2fb7
Add release notes for 10.6.2 changes so far
2022-02-15 16:15:57 -05:00
Jay Berkenbilt
a478cbb6dc
Silently/transparently recognize UTF-16LE as UTF-16 ( fixes #649 )
...
The PDF spec only allows UTF-16BE, but most readers seem to accept
UTF-16LE as well, so now qpdf does too.
2022-02-15 16:13:12 -05:00
Jay Berkenbilt
fbd3e56da7
Ignore -- at the top level arg parser ( fixes #652 )
...
This was unintended behavior that was added back for backward
compatibility. It is intentionally undocumented.
2022-02-15 16:13:12 -05:00
Jay Berkenbilt
19608ec151
Add missing spaces in usageExit
2022-02-15 16:11:33 -05:00
Jay Berkenbilt
894940d17a
Temporarily require windows-2019 github runner
2022-02-15 08:52:40 -05:00
Jay Berkenbilt
1065bbb016
Handle odd PDFDoc codepoints in UTF-8 during transcoding ( fixes #650 )
...
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.
2022-02-15 08:32:38 -05:00
Jay Berkenbilt
2b8d0f385b
Prepare 10.6.1 release
2022-02-11 09:36:17 -05:00
m-holger
5b0030ff59
Tidy pdf-bookmarks example
...
Convert loops to use range-based for statements.
Simplify the extract_bookmarks function.
2022-02-11 09:27:39 -05:00
Jay Berkenbilt
956a272d62
Remove abs calls and pick correct floating point epsilon values ( fixes #641 )
2022-02-11 07:18:33 -05:00
m-holger
4ff837f099
Fix tests for Form XObjects
...
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.
2022-02-10 19:47:37 -05:00
Jay Berkenbilt
235c89e037
Fix one more PDF doc encoding error for 10.6 release ( fixes #637 )
2022-02-09 05:47:58 -05:00
Jay Berkenbilt
15248592c9
Prepare 10.6.0 release (take 2)
2022-02-08 17:37:12 -05:00
Jay Berkenbilt
d6fe473029
Prepare 10.6.0 release
2022-02-08 16:54:03 -05:00
Jay Berkenbilt
ec778ef98b
Add additional comments about new accessor methods
2022-02-08 16:49:43 -05:00
Jay Berkenbilt
fa0b63846b
README-maintainer: update instructions on testing pikepdf locally
2022-02-08 14:37:32 -05:00
Jay Berkenbilt
acc24ba494
Only install docs if they exist
...
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.
2022-02-08 13:52:01 -05:00
Jay Berkenbilt
48ca63e957
Spell check
2022-02-08 13:49:22 -05:00
Jay Berkenbilt
d501e1c0d4
Only update output version from files used as input
...
If we're opening a PDF file to copy its encryption information or
attachments, its version doesn't need to influence the output version.
2022-02-08 13:49:22 -05:00
Dirk Müller
043c44556a
Use DOC_DEST variable for installing documentation
2022-02-08 13:47:50 -05:00
Jay Berkenbilt
f91b21c7d4
Preserve input PDF version on pages/split-pages ( fixes #610 )
2022-02-08 12:34:14 -05:00
Jay Berkenbilt
cfd5147d92
Add QPDF::getVersionAsPDFVersion
2022-02-08 12:34:14 -05:00
Jay Berkenbilt
8082af09be
Add PDFVersion class
2022-02-08 12:34:14 -05:00
Jay Berkenbilt
014dcb02c9
Revert an incorrect correction
2022-02-08 12:34:14 -05:00
Jay Berkenbilt
511d70166d
Check generated QPDFJob files in CI
...
This is to catch pull requests that make changes that would affect
automatically generated job files without including those
modifications.
2022-02-08 11:51:15 -05:00
Jay Berkenbilt
cb769c62e5
WHITESPACE ONLY -- expand tabs in source code
...
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.
2022-02-08 11:51:15 -05:00
m-holger
716381f65a
Fix doc typos
2022-02-08 11:50:58 -05:00
Jay Berkenbilt
68e4aec054
Clarify qpdf's representation of names in the API
...
Clarify that names are to appear in canonical form with PDF escaping
resolved when used in non-parsing QPDFObjectHandle APIs and their C
API counterparts. See https://github.com/qpdf/qpdf/discussions/625 .
2022-02-08 09:09:23 -05:00
Jay Berkenbilt
c62e8e2b28
Update for clean compile with POINTERHOLDER_TRANSITION=2
2022-02-07 17:38:22 -05:00
Jay Berkenbilt
3f22bea084
Use make_array_pointer_holder
...
This will be able to be replaced with QUtil::make_shared_array
2022-02-07 17:38:22 -05:00
Jay Berkenbilt
40f1946df8
Replace PointerHolder arrays with shared_ptr arrays where possible
...
Replace PointerHolder arrays wherever it can be done without breaking ABI.
2022-02-07 17:38:22 -05:00
Jay Berkenbilt
dd4f30226f
Rework PointerHolder transition to make it smoother
...
* Don't surprise people with deprecation warnings
* Provide detailed instructions and support for the transition
2022-02-07 17:38:20 -05:00
Jay Berkenbilt
df2f5c6a36
Add QUtil::make_shared_array to help with PointerHolder transition
2022-02-07 14:08:46 -05:00
Jay Berkenbilt
cfaae47dc6
Add getBufferSharedPointer() to Pl_Buffer and QPDFWriter
2022-02-07 12:53:28 -05:00
m-holger
3e98fe46a2
Tidy example CLI usage
...
Change "-" to "--" for named parameters.
Remove spaces inside "[ option ]" for optional parameters.
Fix "pdf-mod-info --dump file" to match usage message.
2022-02-07 12:49:24 -05:00
Jay Berkenbilt
4fd619818c
Fix doc typo
2022-02-06 11:27:02 -05:00
Jay Berkenbilt
6a2456f732
Comment, ChangeLog, release note for new contribution
2022-02-06 11:27:02 -05:00
m-holger
5901fcad4c
C-API expose QPDFObjectHandle::getKeyIfDict
2022-02-06 11:21:15 -05:00
m-holger
8371060340
Add method QPDFObjectHandle::getKeyIfDict
2022-02-06 11:21:15 -05:00
m-holger
2ed5f49a79
C-API expose QPDFObjectHandle::getValueAs... accessors
2022-02-05 19:40:30 -05:00