79 Commits

Author SHA1 Message Date
Michael R Sweet
a4026bfe00
Prep for release. 2025-01-24 15:30:59 -05:00
Michael R Sweet
cca7383c73
Fix support for UTF-16 string values in dictionaries (Issue #92)
Specifically to support Unicode Title and Author values.
2025-01-24 10:43:41 -05:00
Michael R Sweet
dd7ed67ec1
Update makesrcdist to validate CHANGES.md. 2025-01-23 15:34:43 -05:00
Michael R Sweet
9e2f3aba10
Fix reading of compressed object streams (Issue #92) 2025-01-23 15:27:22 -05:00
Michael R Sweet
fca4dbd395
Make sure we have license files for the example fonts (Issue #91) 2025-01-23 13:03:23 -05:00
Michael R Sweet
41ac7a0b4b
Changelog. 2025-01-18 09:45:29 -05:00
Michael R Sweet
026f653e07
Fix loading of last 1024 bytes for small PDF files (Issue #87) 2025-01-17 16:58:33 -05:00
Michael R Sweet
3bc041e6d3
Delay loading of the Info object and clean up the pdfioinfo example (Issue #87) 2025-01-17 16:50:30 -05:00
Michael R Sweet
fbd61d1fe9
Bump copyright and version, changelog for example makefile fix. 2025-01-10 14:54:11 -05:00
Michael R Sweet
b872df5a1e
Fix validation of date/time values (Issue #83) 2024-12-19 15:41:43 -05:00
Michael R Sweet
d3d6683041
Add support for measuring base fonts (Issue #84)
Update md2pdf example code to support using embedded TrueType or PDF base
fonts.
2024-12-13 17:39:16 -05:00
Michael R Sweet
2ecb9cfb2d
Changelog. 2024-12-08 19:19:13 -05:00
Michael R Sweet
d705d7eb5d
Fix reading PDF files whose trailer is missing a newline (Issue #80) 2024-12-08 19:14:58 -05:00
Michael R Sweet
afac83530f
Add pdfioDictGetKey and pdfioDictGetNumPairs APIs (Issue #63)
Add pdfioArrayRemove and pdfioDictClear APIs (Issue #74)
2024-10-25 17:48:19 -04:00
Michael R Sweet
21b8e3b06f
Changelog. 2024-10-25 17:17:39 -04:00
Michael R Sweet
91392a931f
Changelog. 2024-10-25 17:17:38 -04:00
Michael R Sweet
1d8bcf4d73
Start v1.4.0. 2024-10-25 17:17:38 -04:00
Michael R Sweet
9c04d1dc20
Update changelog. 2024-10-15 13:10:06 -04:00
Michael R Sweet
74dfefdcc1
Update documentation (Issue #77)
- Explain pdfioObjGetSubtype and pdfioObjGetType values
- Provide example code and documentation for accessing common page object values
2024-10-09 15:07:57 -04:00
Michael R Sweet
7d22477917
Fix opening of certain encrypted PDF files (Issue #62) 2024-08-21 11:28:39 -04:00
Michael R Sweet
6cb661f0f4
Cleanup changelog. 2024-08-21 08:25:11 -04:00
Michael R Sweet
f3f70e7877
Merge some TTF sanity check fixes from the TTF project. 2024-08-09 10:54:28 -04:00
Michael R Sweet
c35ddbec00
Changelog 2024-08-05 21:49:26 -04:00
Michael R Sweet
d6d5813b04
Update changelog with CVE number. 2024-08-05 16:34:12 -04:00
Michael R Sweet
6492f210cf
Bump version and changelog. 2024-08-05 10:23:51 -04:00
Michael R Sweet
0c1122b689
Prep for release. 2024-06-28 19:06:44 -04:00
Michael R Sweet
f040cc41c2
Add #define guard to allow MingW to build PDFio; note that MingW is NOT a supported toolchain for PDFio (Issue #66) 2024-06-24 09:03:46 -04:00
Michael R Sweet
23883268e3
Add pdfioFileGetCatalog function (Issue #67)
Refactor the pdfioFileCreateXxx functions to use a common (private) function to
handle creating/initializing the pdfio_file_t object and base file objects.

Update unit tests to display the filename for the pdfioFileClose test.
2024-06-24 08:56:16 -04:00
Michael R Sweet
0766869ad1
Bump version to 1.3.0. 2024-06-24 07:12:01 -04:00
Michael R Sweet
6c1db141a1
Switch string pool code to an insertion sort - provides a modest 25% improvement
to open speeds on typical files.
2024-01-27 20:58:50 -05:00
Michael R Sweet
e882622233
Fix locale support (Issue #61) 2024-01-27 18:22:16 -05:00
Michael R Sweet
476013706e
Prep for 1.2.0 release, bump copyright. 2024-01-24 10:53:53 -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
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
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
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
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
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
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
4804db38a5
Fix missing ivlen initializer for 40-bit RC4 (Issue #51) 2023-11-15 08:43:07 -05:00
Michael R Sweet
600fa4ce59
Fix Unicode font handling (Issue #16) 2023-11-14 18:19:34 -05:00
Michael R Sweet
43114f43bf
Bump version. 2023-10-10 10:22:27 -04:00
Michael R Sweet
2e91e05d7b
Allow "compound" filters that consist of a single named filter (Issue #47) 2023-10-10 07:14:12 -04:00