From 142e03e329bbd6cd2d37cb24ed18c2538eb20daa Mon Sep 17 00:00:00 2001 From: Rasmus Thomsen Date: Sat, 26 Oct 2019 14:11:35 +0200 Subject: [PATCH] Fix build with poppler-0.82 Change-Id: I3b6b3faea7986f3e5a6ae4790580d03bc9c955fc --- .../pdfimport/xpdfwrapper/pdfioutdev_gpl.cxx | 25 +++++++++++++++++++ .../pdfimport/xpdfwrapper/pdfioutdev_gpl.hxx | 16 +++++++++++- 2 files changed, 40 insertions(+), 1 deletion(-) --- a/sdext/source/pdfimport/xpdfwrapper/pdfioutdev_gpl.hxx 2019-10-26 12:40:49.670720552 +0200 +++ b/sdext/source/pdfimport/xpdfwrapper/pdfioutdev_gpl.hxx 2019-10-26 12:40:52.894158294 +0200 @@ -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, --- a/sdext/source/pdfimport/xpdfwrapper/pdfioutdev_gpl.cxx 2019-10-26 12:54:06.718793588 +0200 +++ b/sdext/source/pdfimport/xpdfwrapper/pdfioutdev_gpl.cxx 2019-10-26 12:55:54.338415432 +0200 @@ -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,12 @@ void PDFOutDev::drawImage(GfxState*, Object*, Stream* str, { GfxRGB aMinRGB; colorMap->getColorSpace()->getRGB( - reinterpret_cast(maskColors), + const_cast(reinterpret_cast(maskColors)), &aMinRGB ); GfxRGB aMaxRGB; colorMap->getColorSpace()->getRGB( - reinterpret_cast(maskColors)+gfxColorMaxComps, + const_cast(reinterpret_cast(maskColors))+gfxColorMaxComps, &aMaxRGB ); aMaskBuf.push_back( colToByte(aMinRGB.r) );