node-poppler 5.1.4 → 6.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (176) hide show
  1. package/README.md +2 -0
  2. package/package.json +13 -13
  3. package/src/index.js +20 -8
  4. package/API.md +0 -465
  5. package/CHANGELOG.md +0 -976
  6. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/Annot.h +0 -1783
  7. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/AnnotStampImageHelper.h +0 -68
  8. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/Array.h +0 -92
  9. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/BBoxOutputDev.h +0 -54
  10. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/CMap.h +0 -128
  11. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/CachedFile.h +0 -149
  12. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/CairoFontEngine.h +0 -122
  13. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/CairoOutputDev.h +0 -468
  14. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/CairoRescaleBox.h +0 -60
  15. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/Catalog.h +0 -318
  16. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/CertificateInfo.h +0 -129
  17. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/CharCodeToUnicode.h +0 -143
  18. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/CharTypes.h +0 -24
  19. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/CurlCachedFile.h +0 -37
  20. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/CurlPDFDocBuilder.h +0 -32
  21. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/DateInfo.h +0 -44
  22. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/Decrypt.h +0 -147
  23. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/Dict.h +0 -126
  24. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/Error.h +0 -59
  25. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/ErrorCodes.h +0 -54
  26. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/FDPDFDocBuilder.h +0 -36
  27. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/FILECacheLoader.h +0 -34
  28. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/FileSpec.h +0 -85
  29. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/FontEncodingTables.h +0 -20
  30. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/FontInfo.h +0 -109
  31. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/Form.h +0 -734
  32. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/Function.h +0 -251
  33. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/Gfx.h +0 -373
  34. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/GfxFont.h +0 -466
  35. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/GfxState.h +0 -1759
  36. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/GfxState_helpers.h +0 -90
  37. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/GlobalParams.h +0 -221
  38. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/Hints.h +0 -91
  39. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/JArithmeticDecoder.h +0 -131
  40. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/JBIG2Stream.h +0 -130
  41. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/JPEG2000Stream.h +0 -54
  42. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/JSInfo.h +0 -65
  43. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/Lexer.h +0 -113
  44. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/Linearization.h +0 -43
  45. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/Link.h +0 -566
  46. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/LocalPDFDocBuilder.h +0 -32
  47. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/MarkedContentOutputDev.h +0 -132
  48. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/Movie.h +0 -123
  49. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/NameToCharCode.h +0 -52
  50. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/NameToUnicodeTable.h +0 -4300
  51. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/Object.h +0 -678
  52. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/OptionalContent.h +0 -117
  53. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/Outline.h +0 -122
  54. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/OutputDev.h +0 -379
  55. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/PDFDoc.h +0 -419
  56. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/PDFDocBuilder.h +0 -47
  57. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/PDFDocEncoding.h +0 -43
  58. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/PDFDocFactory.h +0 -58
  59. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/PSOutputDev.h +0 -549
  60. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/PSTokenizer.h +0 -47
  61. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/Page.h +0 -273
  62. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/PageTransition.h +0 -105
  63. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/Parser.h +0 -76
  64. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/PopplerCache.h +0 -65
  65. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/PreScanOutputDev.h +0 -148
  66. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/ProfileData.h +0 -35
  67. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/Rendition.h +0 -164
  68. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/SecurityHandler.h +0 -131
  69. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/Sound.h +0 -82
  70. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/SplashOutputDev.h +0 -413
  71. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/Stream-CCITT.h +0 -334
  72. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/Stream.h +0 -1504
  73. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/StructElement.h +0 -406
  74. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/StructTreeRoot.h +0 -89
  75. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/TextOutputDev.h +0 -918
  76. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/UTF.h +0 -112
  77. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/UnicodeCClassTables.h +0 -983
  78. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/UnicodeCompTables.h +0 -328
  79. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/UnicodeDecompTables.h +0 -7181
  80. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/UnicodeMap.h +0 -128
  81. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/UnicodeMapFuncs.h +0 -35
  82. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/UnicodeMapTables.h +0 -84
  83. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/UnicodeTypeTable.h +0 -49
  84. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/ViewerPreferences.h +0 -87
  85. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/XRef.h +0 -325
  86. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/cpp/poppler-destination.h +0 -69
  87. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/cpp/poppler-document.h +0 -135
  88. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/cpp/poppler-embedded-file.h +0 -55
  89. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/cpp/poppler-font-private.h +0 -68
  90. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/cpp/poppler-font.h +0 -95
  91. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/cpp/poppler-global.h +0 -132
  92. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/cpp/poppler-image.h +0 -74
  93. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/cpp/poppler-page-renderer.h +0 -77
  94. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/cpp/poppler-page-transition.h +0 -85
  95. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/cpp/poppler-page.h +0 -225
  96. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/cpp/poppler-rectangle.h +0 -66
  97. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/cpp/poppler-toc.h +0 -72
  98. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/cpp/poppler-version.h +0 -39
  99. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/cpp/poppler_cpp_export.h +0 -42
  100. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/fofi/FoFiBase.h +0 -66
  101. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/fofi/FoFiEncodings.h +0 -43
  102. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/fofi/FoFiIdentifier.h +0 -52
  103. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/fofi/FoFiTrueType.h +0 -190
  104. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/fofi/FoFiType1.h +0 -70
  105. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/fofi/FoFiType1C.h +0 -263
  106. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/glib/poppler-action.h +0 -454
  107. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/glib/poppler-annot.h +0 -333
  108. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/glib/poppler-attachment.h +0 -123
  109. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/glib/poppler-date.h +0 -32
  110. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/glib/poppler-document.h +0 -541
  111. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/glib/poppler-enums.h +0 -191
  112. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/glib/poppler-features.h +0 -88
  113. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/glib/poppler-form-field.h +0 -254
  114. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/glib/poppler-layer.h +0 -50
  115. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/glib/poppler-macros.h +0 -42
  116. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/glib/poppler-media.h +0 -80
  117. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/glib/poppler-movie.h +0 -81
  118. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/glib/poppler-page.h +0 -424
  119. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/glib/poppler-structure-element.h +0 -425
  120. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/glib/poppler.h +0 -259
  121. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/goo/GooCheckedOps.h +0 -116
  122. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/goo/GooLikely.h +0 -22
  123. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/goo/GooString.h +0 -262
  124. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/goo/GooTimer.h +0 -59
  125. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/goo/ImgWriter.h +0 -39
  126. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/goo/JpegWriter.h +0 -69
  127. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/goo/PNGWriter.h +0 -68
  128. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/goo/TiffWriter.h +0 -70
  129. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/goo/gdir.h +0 -96
  130. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/goo/gfile.h +0 -156
  131. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/goo/gmem.h +0 -201
  132. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/goo/grandom.h +0 -21
  133. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/goo/gstrtod.h +0 -45
  134. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/poppler-config.h +0 -155
  135. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/poppler_private_export.h +0 -42
  136. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/splash/Splash.h +0 -336
  137. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/splash/SplashBitmap.h +0 -127
  138. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/splash/SplashClip.h +0 -131
  139. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/splash/SplashErrorCodes.h +0 -50
  140. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/splash/SplashFTFont.h +0 -71
  141. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/splash/SplashFTFontEngine.h +0 -72
  142. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/splash/SplashFTFontFile.h +0 -64
  143. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/splash/SplashFont.h +0 -116
  144. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/splash/SplashFontEngine.h +0 -89
  145. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/splash/SplashFontFile.h +0 -98
  146. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/splash/SplashFontFileID.h +0 -40
  147. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/splash/SplashGlyphBitmap.h +0 -23
  148. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/splash/SplashMath.h +0 -215
  149. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/splash/SplashPath.h +0 -138
  150. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/splash/SplashPattern.h +0 -107
  151. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/splash/SplashScreen.h +0 -87
  152. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/splash/SplashState.h +0 -132
  153. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/splash/SplashTypes.h +0 -248
  154. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/splash/SplashXPath.h +0 -95
  155. package/src/lib/win32/poppler-22.04.0/Library/include/poppler/splash/SplashXPathScanner.h +0 -136
  156. package/src/lib/win32/poppler-22.04.0/Library/lib/pkgconfig/poppler-cpp.pc +0 -12
  157. package/src/lib/win32/poppler-22.04.0/Library/lib/pkgconfig/poppler-glib.pc +0 -12
  158. package/src/lib/win32/poppler-22.04.0/Library/lib/pkgconfig/poppler.pc +0 -10
  159. package/src/lib/win32/poppler-22.04.0/Library/lib/poppler-cpp.lib +0 -0
  160. package/src/lib/win32/poppler-22.04.0/Library/lib/poppler-glib.lib +0 -0
  161. package/src/lib/win32/poppler-22.04.0/Library/lib/poppler.lib +0 -0
  162. package/src/lib/win32/poppler-22.04.0/Library/share/man/man1/pdfattach.1 +0 -60
  163. package/src/lib/win32/poppler-22.04.0/Library/share/man/man1/pdfdetach.1 +0 -94
  164. package/src/lib/win32/poppler-22.04.0/Library/share/man/man1/pdffonts.1 +0 -128
  165. package/src/lib/win32/poppler-22.04.0/Library/share/man/man1/pdfimages.1 +0 -265
  166. package/src/lib/win32/poppler-22.04.0/Library/share/man/man1/pdfinfo.1 +0 -198
  167. package/src/lib/win32/poppler-22.04.0/Library/share/man/man1/pdfseparate.1 +0 -60
  168. package/src/lib/win32/poppler-22.04.0/Library/share/man/man1/pdftocairo.1 +0 -346
  169. package/src/lib/win32/poppler-22.04.0/Library/share/man/man1/pdftohtml.1 +0 -118
  170. package/src/lib/win32/poppler-22.04.0/Library/share/man/man1/pdftoppm.1 +0 -230
  171. package/src/lib/win32/poppler-22.04.0/Library/share/man/man1/pdftops.1 +0 -267
  172. package/src/lib/win32/poppler-22.04.0/Library/share/man/man1/pdftotext.1 +0 -157
  173. package/src/lib/win32/poppler-22.04.0/Library/share/man/man1/pdfunite.1 +0 -43
  174. package/src/lib/win32/poppler-22.04.0/share/poppler/CMakeLists.txt +0 -309
  175. package/src/lib/win32/poppler-22.04.0/share/poppler/Makefile +0 -333
  176. package/tsconfig.json +0 -9
@@ -1,413 +0,0 @@
1
- //========================================================================
2
- //
3
- // SplashOutputDev.h
4
- //
5
- // Copyright 2003 Glyph & Cog, LLC
6
- //
7
- //========================================================================
8
-
9
- //========================================================================
10
- //
11
- // Modified under the Poppler project - http://poppler.freedesktop.org
12
- //
13
- // All changes made under the Poppler project to this file are licensed
14
- // under GPL version 2 or later
15
- //
16
- // Copyright (C) 2005 Takashi Iwai <tiwai@suse.de>
17
- // Copyright (C) 2009-2016 Thomas Freitag <Thomas.Freitag@alfa.de>
18
- // Copyright (C) 2009 Carlos Garcia Campos <carlosgc@gnome.org>
19
- // Copyright (C) 2010 Christian Feuersänger <cfeuersaenger@googlemail.com>
20
- // Copyright (C) 2011 Andreas Hartmetz <ahartmetz@gmail.com>
21
- // Copyright (C) 2011 Andrea Canciani <ranma42@gmail.com>
22
- // Copyright (C) 2011, 2017 Adrian Johnson <ajohnson@redneon.com>
23
- // Copyright (C) 2012, 2015, 2018-2021 Albert Astals Cid <aacid@kde.org>
24
- // Copyright (C) 2015, 2016 William Bader <williambader@hotmail.com>
25
- // Copyright (C) 2018 Stefan Brüns <stefan.bruens@rwth-aachen.de>
26
- //
27
- // To see a description of the changes please see the Changelog file that
28
- // came with your tarball or type make ChangeLog if you are building from git
29
- //
30
- //========================================================================
31
-
32
- #ifndef SPLASHOUTPUTDEV_H
33
- #define SPLASHOUTPUTDEV_H
34
-
35
- #include "splash/SplashTypes.h"
36
- #include "splash/SplashPattern.h"
37
- #include "poppler-config.h"
38
- #include "poppler_private_export.h"
39
- #include "OutputDev.h"
40
- #include "GfxState.h"
41
- #include "GlobalParams.h"
42
-
43
- class PDFDoc;
44
- class Gfx8BitFont;
45
- class SplashBitmap;
46
- class Splash;
47
- class SplashPath;
48
- class SplashFontEngine;
49
- class SplashFont;
50
- class T3FontCache;
51
- struct T3FontCacheTag;
52
- struct T3GlyphStack;
53
- struct SplashTransparencyGroup;
54
-
55
- //------------------------------------------------------------------------
56
- // Splash dynamic pattern
57
- //------------------------------------------------------------------------
58
-
59
- class SplashFunctionPattern : public SplashPattern
60
- {
61
- public:
62
- SplashFunctionPattern(SplashColorMode colorMode, GfxState *state, GfxFunctionShading *shading);
63
-
64
- SplashPattern *copy() const override { return new SplashFunctionPattern(colorMode, state, (GfxFunctionShading *)shading); }
65
-
66
- ~SplashFunctionPattern() override;
67
-
68
- bool testPosition(int x, int y) override { return true; }
69
-
70
- bool isStatic() override { return false; }
71
-
72
- bool getColor(int x, int y, SplashColorPtr c) override;
73
-
74
- virtual GfxFunctionShading *getShading() { return shading; }
75
-
76
- bool isCMYK() override { return gfxMode == csDeviceCMYK; }
77
-
78
- protected:
79
- Matrix ictm;
80
- double xMin, yMin, xMax, yMax;
81
- GfxFunctionShading *shading;
82
- GfxState *state;
83
- SplashColorMode colorMode;
84
- GfxColorSpaceMode gfxMode;
85
- };
86
-
87
- class SplashUnivariatePattern : public SplashPattern
88
- {
89
- public:
90
- SplashUnivariatePattern(SplashColorMode colorMode, GfxState *state, GfxUnivariateShading *shading);
91
-
92
- ~SplashUnivariatePattern() override;
93
-
94
- bool getColor(int x, int y, SplashColorPtr c) override;
95
-
96
- bool testPosition(int x, int y) override;
97
-
98
- bool isStatic() override { return false; }
99
-
100
- virtual bool getParameter(double xs, double ys, double *t) = 0;
101
-
102
- virtual GfxUnivariateShading *getShading() { return shading; }
103
-
104
- bool isCMYK() override { return gfxMode == csDeviceCMYK; }
105
-
106
- protected:
107
- Matrix ictm;
108
- double t0, t1, dt;
109
- GfxUnivariateShading *shading;
110
- GfxState *state;
111
- SplashColorMode colorMode;
112
- GfxColorSpaceMode gfxMode;
113
- };
114
-
115
- class SplashAxialPattern : public SplashUnivariatePattern
116
- {
117
- public:
118
- SplashAxialPattern(SplashColorMode colorMode, GfxState *state, GfxAxialShading *shading);
119
-
120
- SplashPattern *copy() const override { return new SplashAxialPattern(colorMode, state, (GfxAxialShading *)shading); }
121
-
122
- ~SplashAxialPattern() override;
123
-
124
- bool getParameter(double xc, double yc, double *t) override;
125
-
126
- private:
127
- double x0, y0, x1, y1;
128
- double dx, dy, mul;
129
- };
130
-
131
- // see GfxState.h, GfxGouraudTriangleShading
132
- class SplashGouraudPattern : public SplashGouraudColor
133
- {
134
- public:
135
- SplashGouraudPattern(bool bDirectColorTranslation, GfxState *state, GfxGouraudTriangleShading *shading);
136
-
137
- SplashPattern *copy() const override { return new SplashGouraudPattern(bDirectColorTranslation, state, shading); }
138
-
139
- ~SplashGouraudPattern() override;
140
-
141
- bool getColor(int x, int y, SplashColorPtr c) override { return false; }
142
-
143
- bool testPosition(int x, int y) override { return false; }
144
-
145
- bool isStatic() override { return false; }
146
-
147
- bool isCMYK() override { return gfxMode == csDeviceCMYK; }
148
-
149
- bool isParameterized() override { return shading->isParameterized(); }
150
- int getNTriangles() override { return shading->getNTriangles(); }
151
- void getParametrizedTriangle(int i, double *x0, double *y0, double *color0, double *x1, double *y1, double *color1, double *x2, double *y2, double *color2) override
152
- {
153
- shading->getTriangle(i, x0, y0, color0, x1, y1, color1, x2, y2, color2);
154
- }
155
-
156
- void getNonParametrizedTriangle(int i, SplashColorMode mode, double *x0, double *y0, SplashColorPtr color0, double *x1, double *y1, SplashColorPtr color1, double *x2, double *y2, SplashColorPtr color2) override;
157
-
158
- void getParameterizedColor(double colorinterp, SplashColorMode mode, SplashColorPtr dest) override;
159
-
160
- private:
161
- GfxGouraudTriangleShading *shading;
162
- GfxState *state;
163
- bool bDirectColorTranslation;
164
- GfxColorSpaceMode gfxMode;
165
- };
166
-
167
- // see GfxState.h, GfxRadialShading
168
- class SplashRadialPattern : public SplashUnivariatePattern
169
- {
170
- public:
171
- SplashRadialPattern(SplashColorMode colorMode, GfxState *state, GfxRadialShading *shading);
172
-
173
- SplashPattern *copy() const override { return new SplashRadialPattern(colorMode, state, (GfxRadialShading *)shading); }
174
-
175
- ~SplashRadialPattern() override;
176
-
177
- bool getParameter(double xs, double ys, double *t) override;
178
-
179
- private:
180
- double x0, y0, r0, dx, dy, dr;
181
- double a, inva;
182
- };
183
-
184
- //------------------------------------------------------------------------
185
-
186
- // number of Type 3 fonts to cache
187
- #define splashOutT3FontCacheSize 8
188
-
189
- //------------------------------------------------------------------------
190
- // SplashOutputDev
191
- //------------------------------------------------------------------------
192
-
193
- class POPPLER_PRIVATE_EXPORT SplashOutputDev : public OutputDev
194
- {
195
- public:
196
- // Constructor.
197
- SplashOutputDev(SplashColorMode colorModeA, int bitmapRowPadA, bool reverseVideoA, SplashColorPtr paperColorA, bool bitmapTopDownA = true, SplashThinLineMode thinLineMode = splashThinLineDefault, bool overprintPreviewA = false);
198
-
199
- // Destructor.
200
- ~SplashOutputDev() override;
201
-
202
- //----- get info about output device
203
-
204
- // Does this device use tilingPatternFill()? If this returns false,
205
- // tiling pattern fills will be reduced to a series of other drawing
206
- // operations.
207
- bool useTilingPatternFill() override { return true; }
208
-
209
- // Does this device use functionShadedFill(), axialShadedFill(), and
210
- // radialShadedFill()? If this returns false, these shaded fills
211
- // will be reduced to a series of other drawing operations.
212
- bool useShadedFills(int type) override { return (type >= 1 && type <= 5) ? true : false; }
213
-
214
- // Does this device use upside-down coordinates?
215
- // (Upside-down means (0,0) is the top left corner of the page.)
216
- bool upsideDown() override { return bitmapTopDown; }
217
-
218
- // Does this device use drawChar() or drawString()?
219
- bool useDrawChar() override { return true; }
220
-
221
- // Does this device use beginType3Char/endType3Char? Otherwise,
222
- // text in Type 3 fonts will be drawn with drawChar/drawString.
223
- bool interpretType3Chars() override { return true; }
224
-
225
- //----- initialization and control
226
-
227
- // Start a page.
228
- void startPage(int pageNum, GfxState *state, XRef *xref) override;
229
-
230
- // End a page.
231
- void endPage() override;
232
-
233
- //----- save/restore graphics state
234
- void saveState(GfxState *state) override;
235
- void restoreState(GfxState *state) override;
236
-
237
- //----- update graphics state
238
- void updateAll(GfxState *state) override;
239
- void updateCTM(GfxState *state, double m11, double m12, double m21, double m22, double m31, double m32) override;
240
- void updateLineDash(GfxState *state) override;
241
- void updateFlatness(GfxState *state) override;
242
- void updateLineJoin(GfxState *state) override;
243
- void updateLineCap(GfxState *state) override;
244
- void updateMiterLimit(GfxState *state) override;
245
- void updateLineWidth(GfxState *state) override;
246
- void updateStrokeAdjust(GfxState *state) override;
247
- void updateFillColorSpace(GfxState *state) override;
248
- void updateStrokeColorSpace(GfxState *state) override;
249
- void updateFillColor(GfxState *state) override;
250
- void updateStrokeColor(GfxState *state) override;
251
- void updateBlendMode(GfxState *state) override;
252
- void updateFillOpacity(GfxState *state) override;
253
- void updateStrokeOpacity(GfxState *state) override;
254
- void updatePatternOpacity(GfxState *state) override;
255
- void clearPatternOpacity(GfxState *state) override;
256
- void updateFillOverprint(GfxState *state) override;
257
- void updateStrokeOverprint(GfxState *state) override;
258
- void updateOverprintMode(GfxState *state) override;
259
- void updateTransfer(GfxState *state) override;
260
-
261
- //----- update text state
262
- void updateFont(GfxState *state) override;
263
-
264
- //----- path painting
265
- void stroke(GfxState *state) override;
266
- void fill(GfxState *state) override;
267
- void eoFill(GfxState *state) override;
268
- bool tilingPatternFill(GfxState *state, Gfx *gfx, Catalog *catalog, GfxTilingPattern *tPat, const double *mat, int x0, int y0, int x1, int y1, double xStep, double yStep) override;
269
- bool functionShadedFill(GfxState *state, GfxFunctionShading *shading) override;
270
- bool axialShadedFill(GfxState *state, GfxAxialShading *shading, double tMin, double tMax) override;
271
- bool radialShadedFill(GfxState *state, GfxRadialShading *shading, double tMin, double tMax) override;
272
- bool gouraudTriangleShadedFill(GfxState *state, GfxGouraudTriangleShading *shading) override;
273
-
274
- //----- path clipping
275
- void clip(GfxState *state) override;
276
- void eoClip(GfxState *state) override;
277
- void clipToStrokePath(GfxState *state) override;
278
-
279
- //----- text drawing
280
- void drawChar(GfxState *state, double x, double y, double dx, double dy, double originX, double originY, CharCode code, int nBytes, const Unicode *u, int uLen) override;
281
- bool beginType3Char(GfxState *state, double x, double y, double dx, double dy, CharCode code, const Unicode *u, int uLen) override;
282
- void endType3Char(GfxState *state) override;
283
- void beginTextObject(GfxState *state) override;
284
- void endTextObject(GfxState *state) override;
285
-
286
- //----- image drawing
287
- void drawImageMask(GfxState *state, Object *ref, Stream *str, int width, int height, bool invert, bool interpolate, bool inlineImg) override;
288
- void setSoftMaskFromImageMask(GfxState *state, Object *ref, Stream *str, int width, int height, bool invert, bool inlineImg, double *baseMatrix) override;
289
- void unsetSoftMaskFromImageMask(GfxState *state, double *baseMatrix) override;
290
- void drawImage(GfxState *state, Object *ref, Stream *str, int width, int height, GfxImageColorMap *colorMap, bool interpolate, const int *maskColors, bool inlineImg) override;
291
- void drawMaskedImage(GfxState *state, Object *ref, Stream *str, int width, int height, GfxImageColorMap *colorMap, bool interpolate, Stream *maskStr, int maskWidth, int maskHeight, bool maskInvert, bool maskInterpolate) override;
292
- void drawSoftMaskedImage(GfxState *state, Object *ref, Stream *str, int width, int height, GfxImageColorMap *colorMap, bool interpolate, Stream *maskStr, int maskWidth, int maskHeight, GfxImageColorMap *maskColorMap,
293
- bool maskInterpolate) override;
294
-
295
- //----- Type 3 font operators
296
- void type3D0(GfxState *state, double wx, double wy) override;
297
- void type3D1(GfxState *state, double wx, double wy, double llx, double lly, double urx, double ury) override;
298
-
299
- //----- transparency groups and soft masks
300
- bool checkTransparencyGroup(GfxState *state, bool knockout) override;
301
- void beginTransparencyGroup(GfxState *state, const double *bbox, GfxColorSpace *blendingColorSpace, bool isolated, bool knockout, bool forSoftMask) override;
302
- void endTransparencyGroup(GfxState *state) override;
303
- void paintTransparencyGroup(GfxState *state, const double *bbox) override;
304
- void setSoftMask(GfxState *state, const double *bbox, bool alpha, Function *transferFunc, GfxColor *backdropColor) override;
305
- void clearSoftMask(GfxState *state) override;
306
-
307
- //----- special access
308
-
309
- // Called to indicate that a new PDF document has been loaded.
310
- void startDoc(PDFDoc *docA);
311
-
312
- void setPaperColor(SplashColorPtr paperColorA);
313
-
314
- bool isReverseVideo() { return reverseVideo; }
315
- void setReverseVideo(bool reverseVideoA) { reverseVideo = reverseVideoA; }
316
-
317
- // Get the bitmap and its size.
318
- SplashBitmap *getBitmap() { return bitmap; }
319
- int getBitmapWidth();
320
- int getBitmapHeight();
321
-
322
- // Returns the last rasterized bitmap, transferring ownership to the
323
- // caller.
324
- SplashBitmap *takeBitmap();
325
-
326
- // Get the Splash object.
327
- Splash *getSplash() { return splash; }
328
-
329
- SplashFont *getCurrentFont() { return font; }
330
-
331
- // If <skipTextA> is true, don't draw horizontal text.
332
- // If <skipRotatedTextA> is true, don't draw rotated (non-horizontal) text.
333
- void setSkipText(bool skipHorizTextA, bool skipRotatedTextA)
334
- {
335
- skipHorizText = skipHorizTextA;
336
- skipRotatedText = skipRotatedTextA;
337
- }
338
-
339
- #if 1 //~tmp: turn off anti-aliasing temporarily
340
- bool getVectorAntialias() override;
341
- void setVectorAntialias(bool vaa) override;
342
- #endif
343
-
344
- bool getFontAntialias() { return fontAntialias; }
345
- void setFontAntialias(bool anti) { fontAntialias = anti; }
346
-
347
- void setFreeTypeHinting(bool enable, bool enableSlightHinting);
348
- void setEnableFreeType(bool enable) { enableFreeType = enable; }
349
-
350
- protected:
351
- void doUpdateFont(GfxState *state);
352
-
353
- private:
354
- bool univariateShadedFill(GfxState *state, SplashUnivariatePattern *pattern, double tMin, double tMax);
355
-
356
- void setupScreenParams(double hDPI, double vDPI);
357
- SplashPattern *getColor(GfxGray gray);
358
- SplashPattern *getColor(GfxRGB *rgb);
359
- SplashPattern *getColor(GfxCMYK *cmyk);
360
- SplashPattern *getColor(GfxColor *deviceN);
361
- static void getMatteColor(SplashColorMode colorMode, GfxImageColorMap *colorMap, const GfxColor *matteColor, SplashColor splashMatteColor);
362
- void setOverprintMask(GfxColorSpace *colorSpace, bool overprintFlag, int overprintMode, const GfxColor *singleColor, bool grayIndexed = false);
363
- SplashPath convertPath(GfxState *state, const GfxPath *path, bool dropEmptySubpaths);
364
- void drawType3Glyph(GfxState *state, T3FontCache *t3Font, T3FontCacheTag *tag, unsigned char *data);
365
- #ifdef USE_CMS
366
- bool useIccImageSrc(void *data);
367
- static void iccTransform(void *data, SplashBitmap *bitmap);
368
- static bool iccImageSrc(void *data, SplashColorPtr colorLine, unsigned char *alphaLine);
369
- #endif
370
- static bool imageMaskSrc(void *data, SplashColorPtr line);
371
- static bool imageSrc(void *data, SplashColorPtr colorLine, unsigned char *alphaLine);
372
- static bool alphaImageSrc(void *data, SplashColorPtr line, unsigned char *alphaLine);
373
- static bool maskedImageSrc(void *data, SplashColorPtr line, unsigned char *alphaLine);
374
- static bool tilingBitmapSrc(void *data, SplashColorPtr line, unsigned char *alphaLine);
375
-
376
- bool keepAlphaChannel; // don't fill with paper color, keep alpha channel
377
-
378
- SplashColorMode colorMode;
379
- int bitmapRowPad;
380
- bool bitmapTopDown;
381
- bool fontAntialias;
382
- bool vectorAntialias;
383
- bool overprintPreview;
384
- bool enableFreeType;
385
- bool enableFreeTypeHinting;
386
- bool enableSlightHinting;
387
- bool reverseVideo; // reverse video mode
388
- SplashColor paperColor; // paper color
389
- SplashScreenParams screenParams;
390
- bool skipHorizText;
391
- bool skipRotatedText;
392
-
393
- PDFDoc *doc; // the current document
394
- XRef *xref; // the xref of the current document
395
-
396
- SplashBitmap *bitmap;
397
- Splash *splash;
398
- SplashFontEngine *fontEngine;
399
-
400
- T3FontCache * // Type 3 font cache
401
- t3FontCache[splashOutT3FontCacheSize];
402
- int nT3Fonts; // number of valid entries in t3FontCache
403
- T3GlyphStack *t3GlyphStack; // Type 3 glyph context stack
404
-
405
- SplashFont *font; // current font
406
- bool needFontUpdate; // set when the font needs to be updated
407
- SplashPath *textClipPath; // clipping path built with text object
408
-
409
- SplashTransparencyGroup * // transparency group stack
410
- transpGroupStack;
411
- };
412
-
413
- #endif