Commit Graph

1072 Commits

Author SHA1 Message Date
Eliot Jones
68dd3f5a75 add device cmyk support for png conversion 2021-02-08 18:40:28 -04:00
Eliot Jones
c19742a2ae make converter public and add separation color space 2021-02-08 18:40:28 -04:00
Eliot Jones
9fc44f50d2 fix indexing into indexed color space by using table 2021-02-08 18:40:28 -04:00
Eliot Jones
6c293011a2 keep the bytes factory call which was accidentally removed 2021-02-08 18:40:28 -04:00
Eliot Jones
fad06eac27 add full color space details and transformation into full bytes for indexed 2021-02-08 18:40:28 -04:00
Romain V
c008340b2b
fixes NullToken for a font (#284)
font was in a streamObject, PdfTokenScanner.ParseObjectStream would return a NullToken
DirectObjectFinder.Get would then throw on line 79, even thus it should handle null tokens (i.e. ResourceStore.LoadFontDictionary line 152)
2021-02-08 11:19:39 -04:00
Eliot Jones
6f49b2e29e
Fix buggy font (#283)
* Adds checksum on font file reading

* fix name table parsing on broken table

* only warn if checksum invalid, avoid exception with bounds check #258

also returns a null object when the object generation number exceeds
ushort.maxvalue since this is the maximum allowed value and this
broke tests attempting to parse all objects in the file from #258

* remove potentially problematic document

it might be sensitive data

* use ttf from file to test without including full file

Co-authored-by: romain v <rvergnory@lucca.fr>
2021-02-07 12:23:11 -04:00
Eliot Jones
9d99ac4e9b handle completely null content #243 2021-02-07 12:22:07 -04:00
Eliot Jones
be9fd4b071 add a couple of missing name tokens for viewports and measurements 2021-02-06 12:15:23 -04:00
Eliot Jones
864da75d64
Merge pull request #277 from UglyToad/checkbox-checked-state-tolerance
allow a checkbox to not declare a value and only be checked by appearance #267
2021-02-06 12:13:01 -04:00
Eliot Jones
d3502fdfc0 allow a checkbox to not declare a value and only be checked by appearance #267
in the example document in issue #267 the checkbox declares an
appearance state with no corresponding value, as long as the checkbox
defines its appearances dictionary we treat non-off checkboxes as checked
if there is no corresponding value in the checkbox form field dictionary
2021-02-06 11:58:35 -04:00
Eliot Jones
566724043d
Merge pull request #250 from InusualZ/edit-pdf
[New Feature] PdfPageBuilder: Allow to copy pages from another document
2021-02-06 09:50:09 -04:00
BobLd
0803daaebb
Merge pull request #275 from PmE8HW0KRfqa/patch-1
fix broken img source on https://uglytoad.github.io/PdfPig/
2021-01-30 09:45:30 +00:00
PmE8HW0KRfqa
3930f8e593
fixed broken img link to rxyc example.png
Is there a reason https://github.com/UglyToad/PdfPig and https://uglytoad.github.io/PdfPig/ have different readme.md files?
2021-01-29 19:10:08 -07:00
Eliot Jones
660ac5f486
Merge pull request #269 from plaisted/builderpool
Remove locks / SB pooling during CoreTokenScanner parsing
2021-01-20 08:28:37 -04:00
Eliot Jones
1d36098ec5
Merge pull request #240 from BobLd/type1-flex
Correct letter bbox for Type1 font/flexpoints - Fix #217
2021-01-20 08:26:51 -04:00
Plaisted
a0f0c4d6c7 switch to old syntax for build server 2021-01-19 18:53:44 -06:00
Plaisted
4c807691b7 adding in PlainTokenizer to unpooled SB changes 2021-01-19 18:52:14 -06:00
Plaisted
feb6117e1e fix EOL issues 2021-01-19 18:39:51 -06:00
Plaisted
0b716a759f adding comment for non-static tokenizer 2021-01-19 18:18:33 -06:00
Plaisted
9bfe69aef1 removing locking 2021-01-19 18:06:50 -06:00
Michael Plaisted
60f3005544
Merge pull request #1 from UglyToad/master
Base updates
2021-01-16 11:31:09 -06:00
BobLd
a7a021531c
Merge pull request #263 from BobLd/pdfrectangle-width-fix
Use Euclidean distance in PdfRectangle's width and height
2021-01-16 10:31:35 +00:00
Eliot Jones
901e4d1ac9
Merge pull request #259 from plaisted/master
PdfMerger: Fix indirect object lookup dict
2021-01-15 09:35:15 -04:00
Eliot Jones
ad3e30e19c
Merge pull request #254 from Poltuu/pdfmerger_stream_apis
Pdfmerger stream apis
2021-01-15 09:34:45 -04:00
BobLd
980c6e2316 Use Euclidean distance in PdfRectangle's width and height 2021-01-15 11:20:45 +00:00
Plaisted
8b7fb5274f PdfMerger: Correcting indirect object lookup dict to use dictionary compatible key 2021-01-14 13:57:28 -06:00
romain v
5dbee43dbb Adds output stream support in pdfmerger methods 2021-01-14 09:33:48 +01:00
romain v
a1abf99afc PdfMerger favors streams instead of byte[]
Also, adds api similar to PdfDocument regarding streams
2021-01-14 09:33:05 +01:00
Romain V
19e831b656
fix stackoverflow on pdfmerger (#252)
Obj Ref1
 Kids: [Ref2]

Obj Ref2
 Parent: Ref1
2021-01-08 21:35:19 +00:00
Wesley Moret
7239396665
Allow to have empty code space, fixes #256 (#257) 2021-01-08 20:50:33 +00:00
Wesley Moret
19ac38bf8b
[Improved] PdfMerger: Allow to select the pages when merging documents (#248)
* PdfMerger: Allow to select the pages when merging documents

Supersede #245

* Impose artificial limit in the amount of page, that a node can contain

Plus, Use IReadOnlyList instead of IReadOnlyCollection
2021-01-05 00:31:37 +00:00
Eliot Jones
eabe6b4662
Merge pull request #246 from InusualZ/merger-stackoverflow
Fix #199
2020-12-23 10:54:01 -04:00
Eliot Jones
f3b2960211
Merge pull request #249 from InusualZ/token-write-string
Fix TokenWriter::WriteString not escaping properly special characters
2020-12-23 10:52:58 -04:00
InusualZ
e9c8fbbbaa Fix TokenWriter::WriteString not escaping properly special characters 2020-12-20 19:34:13 +00:00
InusualZ
7126564eef Allow to copy pages from another document
This is a naive implementation, because if you copy multiple pages from the same document, the recipient document would be bloated with duplicated resources
2020-12-20 19:13:19 +00:00
InusualZ
ba5bc1f031 Allow to have multiple content stream in a page
You can create new content stream (NewContentStreamAfter, NewContentStreamBefore) and select (SelectContentStream) which one we are editing at the moment
2020-12-19 10:41:36 +00:00
InusualZ
4e4377c5d4 Address Merger test issue and removed dead code. 2020-12-14 17:39:16 +00:00
InusualZ
d676755f55 Fix #199
In large file brute forcing the search of a specific token can be quite difficult. Detecting duplicated token can be made in a more performance way.
2020-12-09 17:26:41 +00:00
BobLd
04874c25f5 - implement flexpoints
- deactivate SetCurrentPointCommand() - need more investigation
- make SbwCommand static
- add data.pdf and test
2020-12-01 14:57:47 +00:00
Eliot Jones
237fd96f9e version 0.1.4 2020-11-29 14:02:42 -04:00
BobLd
6e69160b4e
Merge pull request #237 from BobLd/operationcontext-refactor
Using `byte[]` for `IPageImageRenderer` and keeping the point on `ModifyCurrentTransformationMatrix.cs` in mind.
2020-11-27 11:29:45 +00:00
BobLd
2b60474e11 IPageImageRenderer returns byte[] instead of MemoryStream. 2020-11-27 11:18:29 +00:00
Eliot Jones
cbd6eebecc up brute force range to 10mib #233
previously this was 1mib but the search range was exceeded in a file with over 1 million bytes of xref table.
2020-11-26 21:23:40 -04:00
Eliot Jones
7fdc8e2e86 allow indirect references for type0 font encoding #238 2020-11-26 21:11:53 -04:00
BobLd
52eb935182 Clean IOperationContext documentation. 2020-11-23 13:40:43 +00:00
BobLd
54f7f7a84a Update PublicApiScannerTests with new public methods 2020-11-23 12:53:35 +00:00
BobLd
69e23be450 Improve documentation for PdfSubpath.Rectangle(...). 2020-11-23 12:47:01 +00:00
BobLd
3c510c62f2 Add PdfRendererImageFormat 2020-11-23 12:44:23 +00:00
BobLd
68e487d5ff Add IPageImageRenderer 2020-11-23 12:38:44 +00:00