You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
125 lines
5.4 KiB
125 lines
5.4 KiB
5 years ago
|
From 2eadd46ab81058087af95bdfc1fea28fcdb65998 Mon Sep 17 00:00:00 2001
|
||
|
From: Rasmus Thomsen <oss@cogitri.dev>
|
||
|
Date: Sat, 26 Oct 2019 14:11:35 +0200
|
||
|
Subject: [PATCH] Fix build with poppler-0.82
|
||
|
|
||
|
Change-Id: I3b6b3faea7986f3e5a6ae4790580d03bc9c955fc
|
||
|
Reviewed-on: https://gerrit.libreoffice.org/81545
|
||
|
Tested-by: Jenkins
|
||
|
Reviewed-by: Michael Stahl <michael.stahl@cib.de>
|
||
|
---
|
||
|
.../pdfimport/xpdfwrapper/pdfioutdev_gpl.cxx | 25 +++++++++++++++++++
|
||
|
.../pdfimport/xpdfwrapper/pdfioutdev_gpl.hxx | 16 +++++++++++-
|
||
|
2 files changed, 40 insertions(+), 1 deletion(-)
|
||
|
|
||
|
diff --git a/sdext/source/pdfimport/xpdfwrapper/pdfioutdev_gpl.cxx b/sdext/source/pdfimport/xpdfwrapper/pdfioutdev_gpl.cxx
|
||
|
index ce32a4139c..3ae3bdc503 100644
|
||
|
--- a/sdext/source/pdfimport/xpdfwrapper/pdfioutdev_gpl.cxx
|
||
|
+++ b/sdext/source/pdfimport/xpdfwrapper/pdfioutdev_gpl.cxx
|
||
|
@@ -863,11 +863,20 @@ void PDFOutDev::eoClip(GfxState *state)
|
||
|
local offset of character (zero for horizontal writing mode). not
|
||
|
taken into account for output pos updates. Used for vertical writing.
|
||
|
*/
|
||
|
+
|
||
|
+#if POPPLER_CHECK_VERSION(0, 82, 0)
|
||
|
+void PDFOutDev::drawChar(GfxState *state, double x, double y,
|
||
|
+ double dx, double dy,
|
||
|
+ double originX, double originY,
|
||
|
+ CharCode, int /*nBytes*/, const Unicode *u, int uLen)
|
||
|
+{
|
||
|
+#else
|
||
|
void PDFOutDev::drawChar(GfxState *state, double x, double y,
|
||
|
double dx, double dy,
|
||
|
double originX, double originY,
|
||
|
CharCode, int /*nBytes*/, Unicode *u, int uLen)
|
||
|
{
|
||
|
+#endif
|
||
|
assert(state);
|
||
|
|
||
|
if( u == nullptr )
|
||
|
@@ -979,11 +988,19 @@ void PDFOutDev::drawImageMask(GfxState* pState, Object*, Stream* str,
|
||
|
writeBinaryBuffer(aBuf);
|
||
|
}
|
||
|
|
||
|
+#if POPPLER_CHECK_VERSION(0, 82, 0)
|
||
|
+void PDFOutDev::drawImage(GfxState*, Object*, Stream* str,
|
||
|
+ int width, int height, GfxImageColorMap* colorMap,
|
||
|
+ poppler_bool /*interpolate*/,
|
||
|
+ const int* maskColors, poppler_bool /*inlineImg*/ )
|
||
|
+{
|
||
|
+#else
|
||
|
void PDFOutDev::drawImage(GfxState*, Object*, Stream* str,
|
||
|
int width, int height, GfxImageColorMap* colorMap,
|
||
|
poppler_bool /*interpolate*/,
|
||
|
int* maskColors, poppler_bool /*inlineImg*/ )
|
||
|
{
|
||
|
+#endif
|
||
|
if (m_bSkipImages)
|
||
|
return;
|
||
|
OutputBuffer aBuf; initBuf(aBuf);
|
||
|
@@ -1004,12 +1021,20 @@ void PDFOutDev::drawImage(GfxState*, Object*, Stream* str,
|
||
|
{
|
||
|
GfxRGB aMinRGB;
|
||
|
colorMap->getColorSpace()->getRGB(
|
||
|
+#if POPPLER_CHECK_VERSION(0, 82, 0)
|
||
|
+ reinterpret_cast<const GfxColor*>(maskColors),
|
||
|
+#else
|
||
|
reinterpret_cast<GfxColor*>(maskColors),
|
||
|
+#endif
|
||
|
&aMinRGB );
|
||
|
|
||
|
GfxRGB aMaxRGB;
|
||
|
colorMap->getColorSpace()->getRGB(
|
||
|
+#if POPPLER_CHECK_VERSION(0, 82, 0)
|
||
|
+ reinterpret_cast<const GfxColor*>(maskColors)+gfxColorMaxComps,
|
||
|
+#else
|
||
|
reinterpret_cast<GfxColor*>(maskColors)+gfxColorMaxComps,
|
||
|
+#endif
|
||
|
&aMaxRGB );
|
||
|
|
||
|
aMaskBuf.push_back( colToByte(aMinRGB.r) );
|
||
|
diff --git a/sdext/source/pdfimport/xpdfwrapper/pdfioutdev_gpl.hxx b/sdext/source/pdfimport/xpdfwrapper/pdfioutdev_gpl.hxx
|
||
|
index 1a0c3f0caa..02f6b59f6f 100644
|
||
|
--- a/sdext/source/pdfimport/xpdfwrapper/pdfioutdev_gpl.hxx
|
||
|
+++ b/sdext/source/pdfimport/xpdfwrapper/pdfioutdev_gpl.hxx
|
||
|
@@ -232,10 +232,17 @@ namespace pdfi
|
||
|
virtual void eoClip(GfxState *state) override;
|
||
|
|
||
|
//----- text drawing
|
||
|
+#if POPPLER_CHECK_VERSION(0, 82, 0)
|
||
|
+ virtual 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;
|
||
|
+#else
|
||
|
virtual void drawChar(GfxState *state, double x, double y,
|
||
|
double dx, double dy,
|
||
|
double originX, double originY,
|
||
|
CharCode code, int nBytes, Unicode *u, int uLen) override;
|
||
|
+#endif
|
||
|
#if POPPLER_CHECK_VERSION(0, 64, 0)
|
||
|
virtual void drawString(GfxState *state, const GooString *s) override;
|
||
|
#else
|
||
|
@@ -248,10 +255,17 @@ namespace pdfi
|
||
|
int width, int height, poppler_bool invert,
|
||
|
poppler_bool interpolate,
|
||
|
poppler_bool inlineImg) override;
|
||
|
+#if POPPLER_CHECK_VERSION(0, 82, 0)
|
||
|
virtual void drawImage(GfxState *state, Object *ref, Stream *str,
|
||
|
int width, int height, GfxImageColorMap *colorMap,
|
||
|
poppler_bool interpolate,
|
||
|
- int* maskColors, poppler_bool inlineImg) override;
|
||
|
+ const int* maskColors, poppler_bool inlineImg) override;
|
||
|
+#else
|
||
|
+ virtual void drawImage(GfxState *state, Object *ref, Stream *str,
|
||
|
+ int width, int height, GfxImageColorMap *colorMap,
|
||
|
+ poppler_bool interpolate,
|
||
|
+ int* maskColors, poppler_bool inlineImg) override;
|
||
|
+#endif
|
||
|
virtual void drawMaskedImage(GfxState *state, Object *ref, Stream *str,
|
||
|
int width, int height,
|
||
|
GfxImageColorMap *colorMap,
|
||
|
--
|
||
|
2.24.1
|
||
|
|