Jay Berkenbilt
8f389f14c0
QUtil::analyze_encoding
2019-01-17 11:43:56 -05:00
Jay Berkenbilt
6817ca585a
Bidirectional transcoding for win, mac, pdf, utf8, utf16
2019-01-17 11:43:56 -05:00
Jay Berkenbilt
698485468a
Move remaining existing transcoding to QUtil
2019-01-17 11:43:56 -05:00
Jay Berkenbilt
5cfcd4f361
Additional checks for unreferenced resources
...
Explicitly abandon removal of unreferenced resources if there are any
lexical errors in the page's contents. This case always generated a
warning, but it now also prevents removal of unreferenced resources,
this strongly decreasing the likelihood of data loss.
2019-01-17 11:43:56 -05:00
Jay Berkenbilt
e09ae710dc
Add tests for shared font/xobject
...
The tests are in a separate commit so the bug-fix commit can be taken
as a patch for older versions.
2019-01-17 09:44:29 -05:00
Jay Berkenbilt
4bc434000c
Copy subdictionaries when removing resources ( fixes #276 )
...
When removing unreferenced resources, the code was copying the overall
resource dictionaries but not the subdictionaries being modified. This
was a "typo" in the code -- the comment clearly stated the need to do
this, but the code replaced the dictionary with itself rather than
with a shallow copy of itself.
2019-01-17 09:40:05 -05:00
Jay Berkenbilt
aad2b10800
TODO
2019-01-12 10:04:14 -05:00
Jay Berkenbilt
654c0e8caf
Allow adding the same page more than once in --pages ( fixes #272 )
2019-01-12 10:01:47 -05:00
Jay Berkenbilt
53d8e916b7
Interpret . in --pages as a shortcut for the primary file
2019-01-12 09:59:03 -05:00
Jay Berkenbilt
5f128b9a27
Fix version number in comment
2019-01-11 07:46:53 -05:00
Jay Berkenbilt
6c2a7b692c
TODO
2019-01-10 22:35:08 -05:00
Jay Berkenbilt
4ecd1df6f2
Add configure option AVOID_WINDOWS_HANDLE
...
If set, we avoid using Windows I/O HANDLE, which is disallowed in some
versions of the Windows SDK, such as for Windows phones.
QUtil::same_file will always return false in this case. Only applies
to Windows builds.
2019-01-10 22:35:08 -05:00
Jay Berkenbilt
d24a120c7f
Add QPDF::setImmediateCopyFrom
2019-01-10 22:35:08 -05:00
Jay Berkenbilt
6b15579ace
Update release notes
2019-01-07 20:10:14 -05:00
Jay Berkenbilt
1dc235e56d
Add completion files for packagers
2019-01-07 19:56:46 -05:00
Jay Berkenbilt
2d0336d862
Add --disable-check-autofiles to configure
2019-01-07 19:56:36 -05:00
Jay Berkenbilt
e6f1e54771
Work around test fragility on Windows
2019-01-07 12:51:34 -05:00
Jay Berkenbilt
8f6f7cec50
Prepare 8.3.0 release
2019-01-07 11:16:54 -05:00
Jay Berkenbilt
74bef044cc
Update release notes for 8.3.0
2019-01-07 11:16:54 -05:00
Jay Berkenbilt
b653929c93
Update version to 8.3.0
2019-01-07 11:16:54 -05:00
Jay Berkenbilt
854955b9b5
TODO
2019-01-07 09:52:41 -05:00
Jay Berkenbilt
3a5738739d
Tweak release instructions
2019-01-07 09:51:56 -05:00
Jay Berkenbilt
69237574e2
Update shared library version information
2019-01-07 08:52:07 -05:00
Jay Berkenbilt
aa602fd107
Fix integer overflow in large file test
2019-01-07 08:49:14 -05:00
Jay Berkenbilt
faae46467e
Spell check
2019-01-07 07:56:46 -05:00
Jay Berkenbilt
3472f6c984
Update copyrights for 2019
2019-01-07 07:54:55 -05:00
Jay Berkenbilt
0bf0f45e67
TODO
2019-01-07 07:38:03 -05:00
Jay Berkenbilt
8a5ca0e406
Don't keep QPDF objects for merging longer than needed
2019-01-07 07:38:03 -05:00
Jay Berkenbilt
c3cee5f154
Exercise out of scope original pdf for copyForeignObject
2019-01-07 07:38:03 -05:00
Jay Berkenbilt
fddbcab0e7
Mostly don't require original QPDF for copyForeignObject ( fixes #219 )
...
The original QPDF is only required now when the source
QPDFObjectHandle is a stream that gets its stream data from a
QPDFObjectHandle::StreamDataProvider.
2019-01-07 00:11:15 -05:00
Jay Berkenbilt
fbbb0ee016
Make a static version of QPDF::pipeStreamData
...
This is in preparation of being able to pipe a stream's data without
keeping a copy of its containing qpdf object.
2019-01-07 00:11:15 -05:00
Jay Berkenbilt
7588cac295
Create an application-scope unique ID for each QPDF object
...
Use this instead of QPDF* as a map key for object_copiers.
2019-01-07 00:11:15 -05:00
Jay Berkenbilt
e27ac682e0
Move encryption parameters into a class
2019-01-06 09:58:16 -05:00
Jay Berkenbilt
005675ed6b
Spell check
2019-01-05 23:04:02 -05:00
Jay Berkenbilt
d81ff5aa3d
TODO
2019-01-05 23:02:00 -05:00
Jay Berkenbilt
a70fbaaf50
Honor other base encodings when generating appearances
2019-01-05 23:01:59 -05:00
Jay Berkenbilt
b341d742db
Add WinAnsi and MacRoman encoding
2019-01-05 23:01:44 -05:00
Jay Berkenbilt
3ef1b77304
Refactor QUtil::utf8_to_ascii
2019-01-05 22:59:29 -05:00
Jay Berkenbilt
089ce5902e
Move utf8_to_utf16 into QUtil
2019-01-05 22:59:27 -05:00
Jay Berkenbilt
ae18bfd142
Refactor string transcoding in QPDF_String
2019-01-05 22:56:58 -05:00
Jay Berkenbilt
5c682f6d1e
Fix image optimization evaluation
...
Don't attempt to pass data through a JPEG filter if we are unable to
filter the data.
2019-01-05 22:37:49 -05:00
Jay Berkenbilt
ab536a4e55
Documentation note
2019-01-05 08:49:43 -05:00
Jay Berkenbilt
7f4d238c53
TODO
2019-01-04 21:58:22 -05:00
Jay Berkenbilt
ee437705fc
Update documentation for new features
2019-01-04 21:58:22 -05:00
Jay Berkenbilt
ab9f4cc212
Split help string
...
It was too long for some compilers.
2019-01-04 21:33:14 -05:00
Jay Berkenbilt
2e342ee5bb
Spell check
2019-01-04 21:33:14 -05:00
Jay Berkenbilt
ee2aad4381
Add CLI flags for image optimization
2019-01-04 21:33:14 -05:00
Jay Berkenbilt
6f3b76b6c1
Fix image-streams.pdf in test suite
...
Some of the images were supposed to have no filter, but somewhere
along the line, they ended up with /FlateDecode, most likely because
qpdf rewrote the file without having --compress-streams=n specified.
If this error is repeated, it will cause a test failure.
2019-01-04 20:13:56 -05:00
Jay Berkenbilt
7b6ab900dc
Support page collation with --collate ( fixes #259 )
2019-01-04 15:13:02 -05:00
Jay Berkenbilt
16fd6e64f9
Add QPDFWriter::getFinalVersion ( fixes #266 )
2019-01-04 12:37:22 -05:00