84 Commits

Author SHA1 Message Date
Peter Williams
7af97fba6a Fixed some comments 2018-06-27 12:54:47 +10:00
Peter Williams
199a74dbd8 Major changes to font code
- Added Type1 font parsing.
- Added Standard 14 font parsing.
- Fixed some bugs in cmap code.
- Started re-structuring of font code. Moved common font fields to `fontSkeleton`
2018-06-27 12:25:59 +10:00
Gunnsteinn Hall
3b89a0ba98 Fixes #157 2018-05-20 23:33:24 +00:00
qz
b7efd634fe Parser crude optimizations.
- parsing functions how collect results in bytes.Buffer
- added benchmarks
- parseHexString avoids calling skipSpace
2018-03-20 04:37:12 +03:00
qz
3f7e07ac9e fixes #144, using bytes.Buffer for more efficient string building 2018-03-05 13:04:27 +03:00
Gunnsteinn Hall
b3e300884f Few fixes: Shadingtype 4 handling, inline image handling (compatibility), encoding name (compatibility) 2017-08-14 11:56:33 +00:00
Gunnsteinn Hall
d234fec92e Allow array in DecodeParms in FlateDecoder of length 1 (containing dict). 2017-08-09 18:09:30 +00:00
Gunnsteinn Hall
cc6883d0ae Fix problem with MultiEncoder DecodeParms. Fixes #97. 2017-08-09 17:43:25 +00:00
Gunnsteinn Hall
9e04cbd144 Limit maximum specified number of indirect objects when parsing xref stream. Fixes #111. 2017-08-08 17:35:06 +00:00
Gunnsteinn Hall
574e5b1933 Merging with recent pull request. 2017-08-07 20:30:29 +00:00
Peter Williams
a96a007238 Merge remote-tracking branch 'upstream/master' into xmaster2 2017-08-07 13:57:07 +10:00
Peter Williams
2bd4a0a995 Added dummy encodings 2017-08-07 13:36:39 +10:00
Peter Williams
38fa0f1fb4 Added dummy encodings 2017-08-07 13:34:19 +10:00
Gunnsteinn Hall
07289e3890 Check sizes for memory allocation based on pdf user inputs. Fixes #107. 2017-08-06 11:41:33 +00:00
Gunnsteinn Hall
9ec828c8f7 Check to avoid division by zero. Fixes #106. 2017-08-06 11:28:39 +00:00
Peter Williams
a1e1e31fee Merge remote-tracking branch 'upstream/master' into xmaster 2017-08-05 21:25:07 +10:00
Gunnsteinn Hall
3261689684 Add GetObjectNums 2017-08-05 00:56:05 +00:00
Gunnsteinn Hall
22c2e5eb41 Address go vet issues 2017-08-04 22:50:28 +00:00
Gunnsteinn Hall
2adbc645ad Fix comment typo 2017-08-04 08:26:36 +00:00
Peter Williams
141519790a Fixed some bugs found while getting pdf_descibe.go to work 2017-08-04 17:47:55 +10:00
Gunnsteinn Hall
b800238e36 Address golint recommendations in core 2017-08-03 15:33:51 +00:00
Gunnsteinn Hall
ad47c116aa Address core golint recommendations in crypt, io 2017-08-03 15:13:40 +00:00
Gunnsteinn Hall
714b4bcb60 Address more golint recommendations #89 2017-08-02 18:01:31 +00:00
Gunnsteinn Hall
2ecf2acce5 Checks on stated byte lengths in xref stream objects. Closes #94. 2017-08-02 15:46:31 +00:00
Gunnsteinn Hall
28aea0d8d7 Address golint recommendations. Add TODO comments for recommended future refactoring work in next major release. 2017-08-02 12:56:32 +00:00
Gunnsteinn Hall
badce2938f Address gofmt simplify items 2017-07-31 14:54:14 +00:00
Gunnsteinn Hall
5bc9d83bb1 Check to ensure row length cannot be greater than data length. Fixes #88. 2017-07-31 12:52:53 +00:00
Gunnsteinn Hall
7f83a4ea2f Add bounds check in crypt, parser. Avoid division by zero. 2017-07-23 20:20:05 +00:00
Gunnsteinn Hall
3639b5c279 Add check for ID array length 2017-07-23 12:30:21 +00:00
Gunnsteinn Hall
9ff2413609 Add check to ensure stream length cannot be larger than file size. Test cases updated. 2017-07-23 12:21:42 +00:00
Gunnsteinn Hall
68bca163a9 Type checking for index list elements 2017-07-23 11:47:21 +00:00
Gunnsteinn Hall
124bd10e7c Check bounds on XRef stream index list (found by fuzzing) 2017-07-23 11:37:35 +00:00
Gunnsteinn Hall
99872f29ba Type check for xref Prev entries added. 2017-07-23 01:54:31 +00:00
Gunnsteinn Hall
c6660b62c9 Fix test case 2017-07-22 16:46:22 +00:00
Gunnsteinn Hall
b2bb6d9836 Fixed problem found by fuzzing when Encrypt pointing to invalid reference 2017-07-22 16:44:42 +00:00
Gunnsteinn Hall
6e30b10029 Prevent recursive loop errors while tracing stream Lengths. Test case included. Fixes #80. 2017-07-22 12:11:58 +00:00
Gunnsteinn Hall
1cf2ac4a98 Fix error return value 2017-07-22 11:17:48 +00:00
Gunnsteinn Hall
469856432b Fix fuzz-detected problem where stream length referring to stream itself (with a test case to verify) 2017-07-21 21:31:23 +00:00
Gunnsteinn Hall
1769c68234 Add type check for Size in trailer. Fixes #77 2017-07-21 14:18:35 +00:00
Gunnsteinn Hall
5f506b7427 Fix fuzzy problems with crossrefs and add a recursive loop guard in reader (page building). Added test cases for these issues. 2017-07-21 14:12:37 +00:00
Gunnsteinn Hall
71807ecfa4 Exposed a reader function to check access rights. Fixed incorrect bit name for AccessPermissions (LimitPrintQuality->FullPrintQuality). Fix in owner password authentication. Closes #51. 2017-07-12 09:48:16 +00:00
Gunnsteinn Hall
825c10fc3e Fix in adding dash via content stream creator 2017-07-11 13:09:52 +00:00
Gunnsteinn Hall
10c3be8c95 Change PdfObjectDictionary from map to struct and introduce ordered keys. Syntax change. Fixes all around to accommodate changes. Also fixes in test cases. Closes #56. 2017-07-08 21:04:13 +00:00
Gunnsteinn Hall
53b9e8b99c Convenience functions to create streams and indirect objects. 2017-06-28 15:14:25 +00:00
Gunnsteinn Hall
a80d617bc7 Handle null filter as raw data. Closes #48. 2017-05-10 10:21:46 +00:00
Gunnsteinn Hall
5c5ad1bc14 Enhancements to tolerate more malformed PDFs. Fixes #47 2017-04-27 22:25:00 +00:00
Gunnsteinn Hall
3f4e84a2e4 Improved xref rebuild repair procedure. Closes #45. 2017-04-26 23:11:35 +00:00
Gunnsteinn Hall
532f564b3a EOF marker seek more forgiving #46 2017-04-26 08:53:18 +00:00
Gunnsteinn Hall
d25fa23fb0 Fix issue with unremoved AES decrypted padding bytes #44 2017-04-24 21:36:07 +00:00
Gunnsteinn Hall
784a60e42b Encoding fixes for images
Support avg, paeth predictors for decoding. Special error flag for
unsupported error parameters. Support specifying encoder when creating
new image objects (inline,xobject).
2017-04-19 11:46:53 +00:00