Skip to content

Commit d071ca4

Browse files
committed
Add support for JPX filter
1 parent 5af64b2 commit d071ca4

File tree

5 files changed

+20
-18
lines changed

5 files changed

+20
-18
lines changed
235 KB
Loading

UglyToad.PdfPig.Rendering.Skia.Tests/TestRendering.cs

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -94,6 +94,12 @@ public class TestRendering
9494
{
9595
// These are not perfect yet and can be updated once the rendering is improved
9696
new object[]
97+
{
98+
// Output image is wrong - but renders JPX image
99+
"68-1990-01_A_1.png",
100+
"68-1990-01_A.pdf", 1, 2
101+
},
102+
new object[]
97103
{
98104
"68-1990-01_A_10.png",
99105
"68-1990-01_A.pdf", 10, 2

UglyToad.PdfPig.Rendering.Skia.Tests/UglyToad.PdfPig.Rendering.Skia.Tests.csproj

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -305,6 +305,9 @@
305305
<None Update="ExpectedImages\pdfpig_skia\2108.11480_4.png">
306306
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
307307
</None>
308+
<None Update="ExpectedImages\pdfpig_skia\68-1990-01_A_1.png">
309+
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
310+
</None>
308311
<None Update="ExpectedImages\pdfpig_skia\68-1990-01_A_10.png">
309312
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
310313
</None>

UglyToad.PdfPig.Rendering.Skia/SkiaRenderingFilterProvider.cs

Lines changed: 10 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -16,17 +16,7 @@
1616
using UglyToad.PdfPig.Filters;
1717
using UglyToad.PdfPig.Filters.Dct.JpegLibrary;
1818
using UglyToad.PdfPig.Filters.Jbig2.PdfboxJbig2;
19-
20-
/* Unmerged change from project 'UglyToad.PdfPig.Rendering.Skia (net6.0)'
21-
Before:
22-
using UglyToad.PdfPig.Tokens;
23-
After:
24-
using UglyToad.PdfPig.Rendering;
25-
using UglyToad.PdfPig.Rendering.Skia;
26-
using UglyToad.PdfPig.Rendering.Skia;
27-
using UglyToad.PdfPig.Rendering.Skia.Helpers;
28-
using UglyToad.PdfPig.Tokens;
29-
*/
19+
using UglyToad.PdfPig.Filters.Jpx.OpenJpeg;
3020
using UglyToad.PdfPig.Tokens;
3121

3222
namespace UglyToad.PdfPig.Rendering.Skia
@@ -46,16 +36,18 @@ private SkiaRenderingFilterProvider() : base(GetDictionary())
4636
{
4737
}
4838

49-
5039
private static Dictionary<string, IFilter> GetDictionary()
5140
{
41+
// New filters
42+
var dct = new JpegLibraryDctDecodeFilter();
43+
var jbig2 = new PdfboxJbig2DecodeFilter();
44+
var jpx = new OpenJpegJpxDecodeFilter();
45+
46+
// Standard filters
5247
var ascii85 = new Ascii85Filter();
5348
var asciiHex = new AsciiHexDecodeFilter();
5449
var ccitt = new CcittFaxDecodeFilter();
55-
var dct = new JpegLibraryDctDecodeFilter(); // new filter
5650
var flate = new FlateFilter();
57-
var jbig2 = new PdfboxJbig2DecodeFilter();
58-
var jpx = new JpxDecodeFilter();
5951
var runLength = new RunLengthFilter();
6052
var lzw = new LzwFilter();
6153

@@ -67,11 +59,11 @@ private static Dictionary<string, IFilter> GetDictionary()
6759
{ NameToken.AsciiHexDecodeAbbreviation.Data, asciiHex },
6860
{ NameToken.CcittfaxDecode.Data, ccitt },
6961
{ NameToken.CcittfaxDecodeAbbreviation.Data, ccitt },
70-
{ NameToken.DctDecode.Data, dct }, // new filter
71-
{ NameToken.DctDecodeAbbreviation.Data, dct }, // new filter
62+
{ NameToken.DctDecode.Data, dct },
63+
{ NameToken.DctDecodeAbbreviation.Data, dct },
7264
{ NameToken.FlateDecode.Data, flate },
7365
{ NameToken.FlateDecodeAbbreviation.Data, flate },
74-
{ NameToken.Jbig2Decode.Data, jbig2 }, // new filter
66+
{ NameToken.Jbig2Decode.Data, jbig2 },
7567
{ NameToken.JpxDecode.Data, jpx },
7668
{ NameToken.RunLengthDecode.Data, runLength },
7769
{ NameToken.RunLengthDecodeAbbreviation.Data, runLength },

UglyToad.PdfPig.Rendering.Skia/UglyToad.PdfPig.Rendering.Skia.csproj

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,7 @@
4242
<PackageReference Include="PdfPig" Version="0.1.10" />
4343
<PackageReference Include="PdfPig.Filters.Dct.JpegLibrary" Version="0.1.10.1" />
4444
<PackageReference Include="PdfPig.Filters.Jbig2.PdfboxJbig2" Version="0.1.10.1" />
45+
<PackageReference Include="PdfPig.Filters.Jpx.OpenJpegDotNet" Version="0.1.10.1" />
4546
<PackageReference Include="SkiaSharp" Version="2.88.9" />
4647
<PackageReference Include="SkiaSharp.HarfBuzz" Version="2.88.9" />
4748
</ItemGroup>

0 commit comments

Comments
 (0)