sdext/source/pdfimport/xpdfwrapper/pdfioutdev_gpl.cxx |   12 ++++++++++++
 1 file changed, 12 insertions(+)

New commits:
commit aa94faf493945e854a888e809a9c5cc8d6d0b978
Author:     Michael Stahl <michael.st...@allotropia.de>
AuthorDate: Tue Jan 7 18:42:29 2025 +0100
Commit:     Michael Stahl <michael.st...@allotropia.de>
CommitDate: Wed Jan 8 10:18:17 2025 +0100

    sdext: adapt xpdfwrapper to poppler 24.12
    
    Change-Id: Ia47edf2ac821e3ef5c40f7582253f894eac74060
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/179902
    Tested-by: Jenkins
    Reviewed-by: Michael Stahl <michael.st...@allotropia.de>

diff --git a/sdext/source/pdfimport/xpdfwrapper/pdfioutdev_gpl.cxx 
b/sdext/source/pdfimport/xpdfwrapper/pdfioutdev_gpl.cxx
index 4d915ce73be1..e2c241d9c3ff 100644
--- a/sdext/source/pdfimport/xpdfwrapper/pdfioutdev_gpl.cxx
+++ b/sdext/source/pdfimport/xpdfwrapper/pdfioutdev_gpl.cxx
@@ -1101,7 +1101,12 @@ void PDFOutDev::drawImageMask(GfxState* pState, Object*, 
Stream* str,
 
     int bitsPerComponent = 1;
     StreamColorSpaceMode csMode = streamCSNone;
+#if POPPLER_CHECK_VERSION(24, 12, 0)
+    bool hasAlpha;
+    str->getImageParams( &bitsPerComponent, &csMode, &hasAlpha );
+#else
     str->getImageParams( &bitsPerComponent, &csMode );
+#endif
     if( bitsPerComponent == 1 && (csMode == streamCSNone || csMode == 
streamCSDeviceGray) )
     {
         GfxRGB oneColor = { dblToCol( 1.0 ), dblToCol( 1.0 ), dblToCol( 1.0 ) 
};
@@ -1317,10 +1322,17 @@ poppler_bool PDFOutDev::tilingPatternFill(GfxState 
*state, Gfx *, Catalog *,
     std::unique_ptr<MemStream> pAlphaStr(new MemStream(reinterpret_cast<char 
*>(pSplashBitmap->getAlphaPtr()),
         0, nBitmapWidth * nBitmapHeight, Object(objNull)));
     auto aDecode = Object(objNull);
+#if POPPLER_CHECK_VERSION(24, 10, 0)
+    std::unique_ptr<GfxImageColorMap> pRgbIdentityColorMap(new 
GfxImageColorMap(8, &aDecode,
+        std::make_unique<GfxDeviceRGBColorSpace>()));
+    std::unique_ptr<GfxImageColorMap> pGrayIdentityColorMap(new 
GfxImageColorMap(8, &aDecode,
+        std::make_unique<GfxDeviceGrayColorSpace>()));
+#else
     std::unique_ptr<GfxImageColorMap> pRgbIdentityColorMap(new 
GfxImageColorMap(8, &aDecode,
         new GfxDeviceRGBColorSpace()));
     std::unique_ptr<GfxImageColorMap> pGrayIdentityColorMap(new 
GfxImageColorMap(8, &aDecode,
         new GfxDeviceGrayColorSpace()));
+#endif
 
     OutputBuffer aBuf; initBuf(aBuf);
     writePng_(aBuf, pRgbStr.get(), nBitmapWidth, nBitmapHeight, 
pRgbIdentityColorMap.get(),

Reply via email to