Commit Graph

366 Commits

Author SHA1 Message Date
Michael R Sweet
83bfb135c6
Add some more debug printfs, relocate extra newline detection after stream
token.
2023-12-15 12:57:31 -05:00
Michael R Sweet
2dfb560f8b
Add more debug logging. 2023-12-14 17:05:10 -05:00
Michael R Sweet
7330cc35ba
Defer object/value decryption to after the object is loaded (Issue #42) 2023-12-14 16:02:26 -05:00
Michael R Sweet
5d760e7315
Update some debug printfs. 2023-12-13 12:48:31 -05:00
Michael R Sweet
2a85baaf81
Increase the maximum number of object streams in a file (Issue #58) - most files
only contain 1 or 2...

Change the implementation of add/find object to use a custom binary insertion
sort algorithm rather than doing a qsort after every addition.  This results in
a significant improvement in open speed - from 2371 seconds (about 39.5 minutes)
to 3.1 seconds for one large test file (an ESRI standard).
2023-12-13 12:26:25 -05:00
Michael R Sweet
2b92044504
Support per-object file IDs (Issue #42) 2023-12-12 21:48:58 -05:00
Michael R Sweet
f4aa951165
Fix _pdfioFileSeek with whence==SEEK_CUR
Fix seek offset after trailer.

Look at the last 1k of the file to find the startxref marker.
2023-12-12 12:24:49 -05:00
Michael R Sweet
038fd8686b
Fix trailer dictionary handling (Issue #58)
Fix generation number handling for object 0 (Issue #59)
2023-12-11 19:56:00 -05:00
Michael R Sweet
7084105dc4
Merge pull request #57 from eli-schwartz/pdfio-pc-redundancy
pdfio.pc: use -lm as specified in configure
2023-12-10 19:35:37 -05:00
Eli Schwartz
9f06f22281
pdfio.pc: use -lm as specified in configure
It is already configured in, in the correct place. Currently, it is
listed twice in Libs.private, if --enable-shared is used. And it is
redundant if the build is static instead, since it is recorded in Libs.
2023-12-10 16:32:52 -05:00
Michael R Sweet
cb6b493df6
Update configure script. 2023-12-10 15:38:35 -05:00
Michael R Sweet
2753a82eb9
Merge pull request #56 from eli-schwartz/misspelled
fix misspelled variable: PKCONFIG
2023-12-10 15:38:12 -05:00
Eli Schwartz
ddb8ddff9c
fix misspelled variable: PKCONFIG
This prevented using pkg-config for zlib lookup.
2023-12-10 01:39:23 -05:00
Michael R Sweet
c992b2ba89
Update the token reading code to protect against obvious format abuses.
Update the xref loading code to protect against looping xref tables.
2023-12-07 17:50:52 -05:00
Michael R Sweet
ed723a46dc
Make sure buffer is terminated on error. 2023-12-06 11:21:33 -05:00
Michael R Sweet
6906a9a708
Fix docos for pdfioFileOpen. 2023-12-05 19:22:47 -05:00
Michael R Sweet
6a381a55fe
Update macOS build docos. 2023-12-05 18:41:26 -05:00
Michael R Sweet
fc3580a948
Update build docos. 2023-12-05 18:39:20 -05:00
Michael R Sweet
6b5c30b4be
Remove PDFIO_ENCRYPTION_AES_256 from docos. 2023-12-05 14:30:41 -05:00
Michael R Sweet
a0cdb261ff
Update CONTRIBUTING docos. 2023-12-05 14:07:52 -05:00
Michael R Sweet
34dbf6c2fe
Documentation cleanup. 2023-12-05 13:49:58 -05:00
Michael R Sweet
86d842167a
Bring back mis-named pdfioContentTextNextLine. 2023-12-05 13:33:07 -05:00
Michael R Sweet
16c8b830b8
Add pdfioFileCreateNumber/StringObj functions (Issue #14) 2023-12-05 08:16:41 -05:00
Michael R Sweet
7ff051fc8b
Add pdfioContentTextNewLineShow/f functions (Issue #24) 2023-12-05 07:49:49 -05:00
Michael R Sweet
927452d1eb
Changelog and exports updates. 2023-12-04 21:22:13 -05:00
Michael R Sweet
f1ad982fd1
Update docos. 2023-12-04 21:21:18 -05:00
Michael R Sweet
c188cb8dad
Finish implementation of pdfioContentTextMeasure (Issue #17) 2023-12-04 21:20:51 -05:00
Michael R Sweet
4919783da5
Save work on string measure support (Issue #17) 2023-12-04 18:54:33 -05:00
Michael R Sweet
86281750e5
Fix man page installation to use mandir (Issue #55) 2023-12-04 08:50:28 -05:00
Michael R Sweet
d92b72ed02
Add math library. 2023-12-03 20:26:27 -05:00
Michael R Sweet
a195c023af
Fix CI scripts. 2023-12-03 20:20:23 -05:00
Michael R Sweet
43000ff01f
Fix up targets. 2023-12-03 19:56:25 -05:00
Michael R Sweet
c6f17cc20f
Fix some warnings. 2023-12-03 19:23:36 -05:00
Michael R Sweet
41146adbdf
Adopt autoconf (Issue #54) 2023-12-03 19:16:34 -05:00
Michael R Sweet
cd80c3037d
Prep for 1.1.4 release. 2023-12-03 16:55:57 -05:00
Michael R Sweet
97934ab995
Add ToUnicode map. 2023-11-19 20:49:30 -05:00
Michael R Sweet
088646e1cf
Drop the FEFF prefix on Unicode strings. 2023-11-19 07:30:17 -05:00
Michael R Sweet
3f0aad7564
Fix another bug in the CMAPv4 code, and a bug in the unit test program. 2023-11-19 07:06:35 -05:00
Michael R Sweet
d36df63b57
Fix a TrueType CMAP decoding bug and add a NotoSans-Regular test page. 2023-11-18 22:15:52 -05:00
Michael R Sweet
a5dfac7495
Bump version. 2023-11-18 18:23:22 -05:00
Michael R Sweet
0258384d53
Range check encrypted string length (Issue #52) 2023-11-18 18:22:11 -05:00
Michael R Sweet
9fec2195d0
Update changelog. 2023-11-15 10:14:02 -05:00
Michael R Sweet
8ccbdaed94
Update documentation. 2023-11-15 09:28:57 -05:00
Michael R Sweet
4804db38a5
Fix missing ivlen initializer for 40-bit RC4 (Issue #51) 2023-11-15 08:43:07 -05:00
Michael R Sweet
ddd984215a
Save work (debug printfs, etc.) 2023-11-15 08:38:47 -05:00
Michael R Sweet
efe7c01015
Fix typo and 'make debug'. 2023-11-14 18:38:26 -05:00
Michael R Sweet
600fa4ce59
Fix Unicode font handling (Issue #16) 2023-11-14 18:19:34 -05:00
Michael R Sweet
688810f143
Save work. 2023-11-13 16:18:02 -05:00
Michael R Sweet
858cc101b6
Save work. 2023-11-13 13:39:06 -05:00
Michael R Sweet
43114f43bf
Bump version. 2023-10-10 10:22:27 -04:00