Commit Graph

1417 Commits

Author SHA1 Message Date
BobLd
ae5d3627e0 Add AddPageFactory() methods and GetPage<T>() to PdfDocument. Make public IPageFactory<TPage>, PageFactoryBase<TPage>, IResourceStore, ILookupFilterProvider, IPageContentParser, IPdfTokenScanner, UserSpaceUnit, ResourceColorSpace 2023-07-01 18:33:17 +01:00
BobLd
94cc9be967 Fix regression introduced in #561 where paths were not clipped correctly for rotated pages due to initial clipping path not being transformed 2023-06-20 23:47:52 +01:00
Eliot Jones
ae83f39e28
detail new nightly build location 2023-06-07 20:54:59 +01:00
Eliot Jones
c6a6d885ff Merge branch 'master' of github.com:UglyToad/PdfPig 2023-06-06 19:37:38 +01:00
Eliot Jones
32cf25e6b7 fix typo in accursed yaml 2023-06-06 19:36:29 +01:00
Eliot Jones
129e69fdf9
Merge pull request #638 from UglyToad/pdfdocencoding
Implement PdfDocEncoding for reading string tokens
2023-06-05 22:01:25 +01:00
Eliot Jones
66248f19e4 include readme in package 2023-06-05 22:01:04 +01:00
Eliot Jones
2366d22719 move nightly builds to separate package id
while nightly builds are useful they also cause
a large amount of spam on the main project
nuget. here we try to change the package id
so that it will be hosted as a separate package
while having all the same code and namespaces
this means people can opt into the nightly builds
while keeping the version history of the released
package tidy.

no idea if this will work because actions and
yaml is my idea of hell and is impossible to
debug, but let's give it a go
2023-06-05 21:48:02 +01:00
Eliot Jones
2be4c69c16 set nightly release version
also toggles class back to public for nightly
versions #538
2023-06-05 21:37:34 +01:00
Eliot Jones
16ac297d10 version 0.1.8 2023-06-05 21:36:00 +01:00
Eliot Jones
4118ae0df4 temp hide pdftextremover #538 2023-06-05 21:09:41 +01:00
Eliot Jones
8edbd18a07 use encoding aware reader for decrypt 2023-06-04 17:02:27 +01:00
Eliot Jones
81bb6fce83 use built in encoding handling 2023-06-04 16:49:37 +01:00
Eliot Jones
6f59bed9a2 use pdfdocencoding when parsing strings 2023-06-04 16:40:43 +01:00
Eliot Jones
7fe5fc2272 add test case for armenian alphabet 2023-06-04 14:14:18 +01:00
Eliot Jones
9d2b3f914d account for skipmissingfonts in positioned text #637 2023-06-04 11:47:30 +01:00
Eliot Jones
6daa2ec192
Merge pull request #634 from UglyToad/type-2-font-hflex
Implement hflex and hflex1 operators in Type2CharStringParser (fix #558)
2023-05-28 18:05:48 +01:00
BobLd
5b48011256 Implement hflex and hflex1 operators in Type2CharStringParser (fix #558) 2023-05-28 17:43:13 +01:00
Eliot Jones
5126d28612 isolate incorrect letter test case #558 2023-05-27 16:37:53 +01:00
Eliot Jones
edf99acdf4 write version from builder in xmp metadata #633 2023-05-27 13:52:28 +01:00
Eliot Jones
211b27062d support looking up in reply to value for annotation #362 2023-05-27 13:40:01 +01:00
Eliot Jones
fba1cbc13c skip missing objects if skip fonts is true #298
if skip missing fonts is set we want to read the file
as much as possible so we will also skip any missing
xobjects like images, forms or postscript code
2023-05-27 10:46:29 +01:00
Eliot Jones
20d3cc9066 tidy up during investigation #600 2023-05-23 19:22:00 +01:00
Eliot Jones
11df5b520d update y if preceding letter was blank #603 2023-05-22 20:40:36 +01:00
Eliot Jones
471dca8327 amend default word extractor logic #603
default word extractor consumed words sorted
by descending y value order and had a check for
when the following letter had a value more than 0.5
units different to the current baseline (from first letter)
position. however we were checking if the new value was
more than the current baseline which it could never
be since the letter was always guaranteed to have an
equal or lower y value based on initial sort (since pdf
y dimension runs top to bottom)
2023-05-22 20:22:19 +01:00
Eliot Jones
98be67d93b
Merge pull request #629 from thinkbeforecoding/fix/copyfrom
Fix: copyfrom resources collisions
2023-05-22 19:59:14 +01:00
BobLd
d244c10a94 Add caching to DeviceN and Separation colors spaces when rendering images 2023-05-22 09:27:37 +01:00
jchassaing
876808b1eb Fix: Missing cultureinfo fails tests on non-US systems 2023-05-22 09:06:40 +02:00
jchassaing
08f4b4a372 Fix: Handle Fm resources and GS (gfx state) in page copyFrom 2023-05-22 09:05:14 +02:00
Eliot Jones
c3dd69388d normalize some line endings 2023-05-21 19:17:14 +01:00
Eliot Jones
bb4c6f2f1e add capacity to glyph list dictionaries 2023-05-21 19:13:14 +01:00
Eliot Jones
976d8929a1 Merge branch 'master' of github.com:UglyToad/PdfPig 2023-05-21 14:58:45 +01:00
Eliot Jones
fc2f7b9325 add intelligent error recovery for known dictionaries #511
if we're parsing a known dictionary (e.g. all keys are required
and there are no additional optional keys) and we encounter
an error we provide the possibility to recover by assuming
a dictionary end token after all required tokens are consumed
if parsing by looking for dictionary end failed due to a format
exception
2023-05-21 14:58:39 +01:00
BobLd
616978a178 Use IPdfTokenScanner in PdfFunctionType3 create function 2023-05-21 14:56:12 +01:00
BobLd
903218854c Refactor PdfFunctionParser to account for indirect reference tokens 2023-05-21 13:44:57 +01:00
Eliot Jones
32a562f02a address compiler warnings, swap rijndael for aes 2023-05-21 13:44:36 +01:00
BobLd
9acfac4fdf Handle many functions in Shading 2023-05-21 13:03:23 +01:00
Eliot Jones
0b8252e930 do not require tounicode to be valid even if present #354 #619
these issues reported that parsing was failing due to a missing
token being reference in the tounicode entry. since neither
issue included a sample file it's impossible to determine the
right fix accurately, however since the tounicode entry is
optional in the spec we can try being more lenient here, this
might just result in more errors once we try to use the font
but the logger will at least prevent parsing the entire document
failing
2023-05-21 12:34:27 +01:00
Eliot Jones
6b9c3be9f8 tidy up some small formatting issues 2023-05-21 12:20:57 +01:00
Eliot Jones
2073e036ef Merge branch 'master' of github.com:UglyToad/PdfPig 2023-05-18 20:30:20 +01:00
Eliot Jones
2a1a09d1fa handle missing optional named destinations 2023-05-18 20:30:17 +01:00
BobLd
a4284aa5a8 Implement Pattern color space and Shading, seal IColor classes, stop using decimal in colors and use double instead 2023-05-18 20:24:55 +01:00
Eliot Jones
fc59d1e58f try making nightly release dependent on test passing 2023-05-18 20:05:06 +01:00
Eliot Jones
c68c195ea8 update package target frameworks 2023-05-18 19:59:58 +01:00
Eliot Jones
23aeb66566 bump integration test runner version 2023-05-17 20:34:10 +01:00
Eliot Jones
35ff13732e remove completely out of support net 4.5 2023-05-17 20:20:05 +01:00
Yufei Huang
3898f09a5f Pdf merger support copy links 2023-04-22 13:54:31 +01:00
mvantzet
147b8997cc
Fix glyph bounding box for Type3 font with zero height (#610)
* For Type3 font with a zero width/height bounding box, set it to a sensible
default using the font matrix. This ensures the letter bounding boxes will
not have height 0.

* Also added a test to check for non-zero height in the sample Type3 PDF

* Prevent division by zero error

---------

Co-authored-by: mvantzet <mark@radialsg.com>
2023-04-19 08:55:34 +01:00
kapiosk
2d72d62c59
Updated created basic AcroFormExtensions for fields (#599)
* Created basic AcroFormExtensions for fields

* Update AcroFormExtensions.cs

* Added AcroFormExtensions in PublicApiScannerTests
2023-04-18 17:53:05 +01:00
BobLd
cdc3d7722a Set rendering intent in operation 2023-04-16 19:34:54 +01:00