<pre style='margin:0'>
Ryan Schmidt (ryandesign) pushed a commit to branch master
in repository macports-ports.

</pre>
<p><a href="https://github.com/macports/macports-ports/commit/03828094b68eb219e24fe3d478818fe69ad11e34">https://github.com/macports/macports-ports/commit/03828094b68eb219e24fe3d478818fe69ad11e34</a></p>
<pre style="white-space: pre; background: #F8F8F8">The following commit(s) were added to refs/heads/master by this push:
<span style='display:block; white-space:pre;color:#404040;'>     new 03828094b68 scribus-devel: Update to 1.5.8
</span>03828094b68 is described below

<span style='display:block; white-space:pre;color:#808000;'>commit 03828094b68eb219e24fe3d478818fe69ad11e34
</span>Author: Ryan Schmidt <ryandesign@macports.org>
AuthorDate: Fri Jun 30 05:16:02 2023 -0500

<span style='display:block; white-space:pre;color:#404040;'>    scribus-devel: Update to 1.5.8
</span>---
 print/scribus-devel/Portfile            |  46 +-
 print/scribus-devel/files/authors.patch |  19 +
 print/scribus-devel/files/poppler.patch | 935 ++++++++++++++++++++++++++++++++
 3 files changed, 983 insertions(+), 17 deletions(-)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/print/scribus-devel/Portfile b/print/scribus-devel/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 100c9e6340c..7e3baea2aac 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/print/scribus-devel/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/print/scribus-devel/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -2,24 +2,23 @@
</span> 
 PortSystem          1.0
 PortGroup           cmake 1.1
<span style='display:block; white-space:pre;background:#ffe0e0;'>-PortGroup           github 1.0
</span> PortGroup           qt5 1.0
 PortGroup           boost 1.0
 
 qt5.depends_component qttools qttranslations
 qt5.min_version     5.14.0
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-github.setup        scribusproject scribus 551a34ccf2da24852acce3feae808ed1c30550d9
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-version             1.5.8.svn-20211215
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-revision            6
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-checksums           rmd160  8b765403fc68ea6eb6b1fa9cd0d7a1f0ab141b91 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    sha256  9ef5ca364d0113d1480dfcd31ce666406d9a825c9f0d736083b90518b911230e \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    size    88516955
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Newer versions require Qt 6.
</span> name                scribus-devel
<span style='display:block; white-space:pre;background:#e0ffe0;'>+epoch               1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+version             1.5.8
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+revision            0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+checksums           rmd160  74aa3579efa5bc8733a95a47be6cf341b0bbdcec \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    sha256  47816e8fcf6d05788ff16aa4499f97ff22431c777a7789149b0a88b451e16b74 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    size    74543476
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> categories          print
 license             LGPL-2+ BSD MIT
<span style='display:block; white-space:pre;background:#ffe0e0;'>-platforms           darwin
</span> maintainers         nomaintainer
 set branch          [join [lrange [split ${version} .] 0 1] .]
 
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -32,8 +31,12 @@ long_description    Scribus is an open source desktop publishing program. It \
</span>                     currently ${branch}.x.
 
 homepage            https://www.scribus.net/
<span style='display:block; white-space:pre;background:#e0ffe0;'>+master_sites        sourceforge:project/scribus/scribus-devel/${version}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+use_xz              yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+distname            scribus-${version}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+dist_subdir         scribus
</span> 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set py_ver          3.9
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set py_ver          3.11
</span> set py_ver_nodot    [string map {. {}} ${py_ver}]
 
 depends_build-append \
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -55,19 +58,30 @@ depends_lib-append \
</span>                     port:libfreehand \
                     port:libmspub \
                     port:libpagemaker \
<span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:libqxp \
</span>                     port:librevenge \
                     port:libvisio-0.1 \
                     port:libxml2 \
<span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:libzmf \
</span>                     port:podofo \
                     path:lib/pkgconfig/poppler.pc:poppler \
                     port:python${py_ver_nodot} \
                     port:tiff \
                     port:zlib
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-use_parallel_build  no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+post-extract {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # DOS to UNIX line endings so we can patch.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    reinplace -W ${worksrcpath}/scribus/plugins/import/pdf "s|\r||g" \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    importpdf.cpp \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    slaoutput.cpp \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    slaoutput.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+patchfiles          authors.patch \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    poppler.patch
</span> 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-compiler.cxx_standard 2011
</span> compiler.c_standard   2011
<span style='display:block; white-space:pre;background:#e0ffe0;'>+compiler.cxx_standard 2017
</span> 
 set PyFRM           ${frameworks_dir}/Python.framework/Versions
 
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -76,6 +90,7 @@ configure.args-append \
</span>                     -DWITH_PODOFO=YES \
                     -DWANT_DISTROBUILD=YES \
                     -DWITH_BOOST=YES \
<span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -DWANT_CPP17=YES \
</span>                     -DWANT_GRAPHICSMAGICK=NO \
                     -DWANT_NOOSG=YES \
                     -DPython3_EXECUTABLE=${prefix}/bin/python${py_ver} \
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -88,8 +103,5 @@ variant bitmap description {Input filters for most GraphicsMagick bitmap formats
</span>     depends_lib-append      port:GraphicsMagick
 }
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-build.env           HOME=${worksrcpath}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# These can be uncommented to livecheck for the devel version
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#livecheck.url       https://www.scribus.net/downloads/unstable-branch/
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#livecheck.regex     /scribus-devel/(\[a-z0-9\]+(\\.\[a-z0-9\]+)+)/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+livecheck.url       ${homepage}downloads/unstable-branch/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+livecheck.regex     /scribus-devel/(\[a-z0-9\]+(\\.\[a-z0-9\]+)+)/
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/print/scribus-devel/files/authors.patch b/print/scribus-devel/files/authors.patch
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..dd27d3dbd6c
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/print/scribus-devel/files/authors.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,19 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Fix formatting in Authors tab in About box.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+https://bugs.scribus.net/view.php?id=16966
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- AUTHORS.orig   (revision 25520)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ AUTHORS        (working copy)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -98,12 +98,12 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Official Documentation:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Alessandro Levati 8av10s@tiscali.it
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-Astankov Dimitry Alexandrovichu
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++Astankov Dimitry Alexandrovichu 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Christoph Schäfer christoph@scribus.info
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Craig Bradney mrb@scribus.info
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Gregory Pittman gpittman@iglou.com
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Oleksandr Moskalenko malex@tagancha.org
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-Peter Linnell
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++Peter Linnell 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Petr Vaněk petr@yarpen.cz
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Other Documentation:
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/print/scribus-devel/files/poppler.patch b/print/scribus-devel/files/poppler.patch
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..c7acc3c503e
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/print/scribus-devel/files/poppler.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,935 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Combination of upstream commits to fix building with newer poppler versions:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+r24884: #16734: Build break with poppler 22.2.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+https://github.com/scribusproject/scribus/commit/85c0dff3422fa3c26fbc2e8d8561f597ec24bd92
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+r24982: #16764: Build break with poppler 22.03.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+https://github.com/scribusproject/scribus/commit/f19410ac3b27e33dd62105746784e61e85b90a1d
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+r24985: Enforce poppler version >= 0.86.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+https://github.com/scribusproject/scribus/commit/e013e8126d2100e8e56dea5b836ad43275429389
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+r24989: #16764: Better patch, avoid a memory leak
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+https://github.com/scribusproject/scribus/commit/48263954a7dee0be815b00f417ae365ab26cdd85
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+r25000: #16767: Dashed lines imported from PDF have incorrect segment lengths
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+https://github.com/scribusproject/scribus/commit/a9236cd44254339e64d1e422dcbbfd31913c8c11
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+r25074: Fix build with poppler 22.04.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+https://github.com/scribusproject/scribus/commit/f2237b8f0b5cf7690e864a22ef7a63a6d769fa36
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+r25140: Fix build with poppler 22.09.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+https://github.com/scribusproject/scribus/commit/8acd29e97813b9132e3b51b2f05e8fac65819ed7
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- cmake/modules/Findpoppler.cmake.orig   2022-01-23 10:16:42.000000000 -0600
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ cmake/modules/Findpoppler.cmake        2023-06-30 03:49:11.000000000 -0500
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1,8 +1,8 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include(FindPkgConfig)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ find_package(PkgConfig QUIET)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-pkg_search_module(poppler libpoppler>=0.62.0 poppler>=0.62.0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++pkg_search_module(poppler libpoppler>=0.86.0 poppler>=0.86.0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if (poppler_FOUND)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  pkg_search_module(poppler_cpp REQUIRED libpoppler-cpp>=0.62.0 poppler-cpp>=0.62.0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  pkg_search_module(poppler_cpp REQUIRED libpoppler-cpp>=0.86.0 poppler-cpp>=0.86.0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ endif(poppler_FOUND)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ find_path(poppler_INCLUDE_DIR
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- scribus/plugins/import/pdf/importpdf.cpp.orig  2023-06-30 03:49:02.000000000 -0500
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ scribus/plugins/import/pdf/importpdf.cpp       2023-06-30 03:49:11.000000000 -0500
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -58,6 +58,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "util.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "util_formats.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "util_math.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#include "util_os.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "ui/customfdialog.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "ui/missing.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -75,22 +76,18 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ QImage PdfPlug::readThumbnail(const QString& fName)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  QString pdfFile = QDir::toNativeSeparators(fName);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 83, 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   globalParams.reset(new GlobalParams());
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  std::unique_ptr<GlobalParams> globalParamsPtr(new GlobalParams());
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  globalParams = globalParamsPtr.get();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#if defined(Q_OS_WIN32) && POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 62, 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  auto fname = new GooString(pdfFile.toUtf8().data());
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  auto fname = new GooString(QFile::encodeName(pdfFile).data());
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   globalParams->setErrQuiet(gTrue);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  QString pdfFile = QDir::toNativeSeparators(fName);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  QByteArray encodedFileName = os_is_win() ? pdfFile.toUtf8() : QFile::encodeName(pdfFile);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(22, 3, 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  auto fname = std::make_unique<GooString>(encodedFileName.data());
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  PDFDoc pdfDoc{ std::move(fname) };
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  auto fname = new GooString(encodedFileName.data());
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   PDFDoc pdfDoc{fname, nullptr, nullptr, nullptr};
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if (!pdfDoc.isOk() || pdfDoc.getErrorCode() == errEncrypted)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           return QImage();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -329,21 +326,18 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           qApp->processEvents();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 83, 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   globalParams.reset(new GlobalParams());
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  std::unique_ptr<GlobalParams> globalParamsPtr(new GlobalParams());
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  globalParams = globalParamsPtr.get();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#if defined(Q_OS_WIN32) && POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 62, 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  auto fname = new GooString(fn.toUtf8().data());
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  auto fname = new GooString(QFile::encodeName(fn).data());
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   globalParams->setErrQuiet(gTrue);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-//        globalParams->setPrintCommands(gTrue);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   QList<OptionalContentGroup*> ocgGroups;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  auto pdfDoc = std::unique_ptr<PDFDoc>(new PDFDoc(fname, nullptr, nullptr, nullptr));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  QByteArray encodedFileName = os_is_win() ? fn.toUtf8() : QFile::encodeName(fn);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(22, 3, 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  auto fname = std::make_unique<GooString>(encodedFileName.data());
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  auto pdfDoc = std::make_unique<PDFDoc>(std::move(fname));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  auto fname = new GooString(encodedFileName.data());
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  auto pdfDoc = std::make_unique<PDFDoc>(fname, nullptr, nullptr, nullptr);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if (pdfDoc)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           if (pdfDoc->getErrorCode() == errEncrypted)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -357,22 +351,21 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   QString text = QInputDialog::getText(mw, tr("Open PDF-File"), tr("Password"), QLineEdit::Normal, "", &ok);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   if (ok && !text.isEmpty())
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#if defined(Q_OS_WIN32) && POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 62, 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                          auto fname = new GooString(fn.toUtf8().data());
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(22, 3, 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                          auto fname = std::make_unique<GooString>(encodedFileName.data());
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                          std::optional<GooString> userPW(std::in_place, text.toLocal8Bit().data());
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                          pdfDoc.reset(new PDFDoc(std::move(fname), userPW, userPW, nullptr));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                          auto fname = new GooString(QFile::encodeName(fn).data());
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                          auto fname = new GooString(encodedFileName.data());
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           auto userPW = new GooString(text.toLocal8Bit().data());
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           pdfDoc.reset(new PDFDoc(fname, userPW, userPW, nullptr));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           qApp->changeOverrideCursor(QCursor(Qt::WaitCursor));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   if ((!pdfDoc) || (pdfDoc->getErrorCode() != errNone))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           if (m_progressDialog)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                   m_progressDialog->close();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#if POPPLER_ENCODED_VERSION < POPPLER_VERSION_ENCODE(0, 83, 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                          delete globalParams;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           return false;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   if (m_progressDialog)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -482,7 +475,6 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                                   }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                                   else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                                   {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 69, 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                                           const auto& ocgs = ocg->getOCGs ();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                                           for (const auto& ocg : ocgs)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                                           {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -494,25 +486,11 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                                                           ocgNames.append(ocgName);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                                                   }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                                           }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                                                          GooList *ocgs = ocg->getOCGs ();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                                                          for (int i = 0; i < ocgs->getLength (); ++i)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                                                          {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                                                                  OptionalContentGroup *oc = (OptionalContentGroup *)ocgs->get(i);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                                                                  QString ocgName = UnicodeParsedString(oc->getName());
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                                                                  if (!ocgNames.contains(ocgName))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                                                                  {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                                                                          ocgGroups.prepend(oc);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                                                                          ocgNames.append(ocgName);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                                                                  }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                                                          }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                                   }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                           }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                   }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                   else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                   {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 69, 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                           const auto& ocgs = ocg->getOCGs ();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                           for (const auto& ocg : ocgs)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                           {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -524,19 +502,6 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                                           ocgNames.append(ocgName);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                                   }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                           }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                                          GooList *ocgs = ocg->getOCGs ();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                                          for (int i = 0; i < ocgs->getLength (); ++i)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                                          {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                                                  OptionalContentGroup *oc = (OptionalContentGroup *)ocgs->get(i);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                                                  QString ocgName = UnicodeParsedString(oc->getName());
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                                                  if (!ocgNames.contains(ocgName))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                                                  {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                                                          ocgGroups.prepend(oc);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                                                          ocgNames.append(ocgName);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                                                  }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                                          }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                   }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -775,13 +740,8 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                                   names = catDict.dictLookup("OpenAction");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                                   if (names.isDict())
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                                   {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 86, 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                                           std::unique_ptr<LinkAction> linkActionUPtr = LinkAction::parseAction(&names, pdfDoc->getCatalog()->getBaseURI());
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                                           LinkAction *linkAction = linkActionUPtr.get();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                                                          LinkAction *linkAction = nullptr;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                                                          linkAction = LinkAction::parseAction(&names, pdfDoc->getCatalog()->getBaseURI());
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                                           if (linkAction && (linkAction->getKind() == actionJavaScript))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                                           {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                                                   LinkJavaScript *jsa = (LinkJavaScript*) linkAction;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -849,11 +809,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           pdfDoc.reset();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 83, 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   globalParams.reset();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  globalParams = nullptr;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ //        qDebug() << "converting finished";
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ //        qDebug() << "Imported" << m_elements.count() << "Elements";
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- scribus/plugins/import/pdf/slaoutput.cpp.orig  2023-06-30 03:49:02.000000000 -0500
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ scribus/plugins/import/pdf/slaoutput.cpp       2023-06-30 03:49:11.000000000 -0500
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -7,6 +7,11 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "slaoutput.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(22, 2, 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#include <memory>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#include <optional>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <poppler/GlobalParams.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <poppler/poppler-config.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <poppler/FileSpec.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -169,8 +174,13 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   int shade = 100;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   currColorText = getColor(state->getFillColorSpace(), state->getFillColor(), &shade);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   fontSize = state->getFontSize();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(22, 4, 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  if (state->getFont() && state->getFont()->getName())
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++          fontName = new GooString(state->getFont()->getName().value());
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if (state->getFont())
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           fontName = state->getFont()->getName()->copy();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   itemText = s->copy();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -327,15 +337,9 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* Replacement for the crippled Poppler function LinkAction* AnnotWidget::getAdditionalAction(AdditionalActionsType type) */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 86, 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ std::unique_ptr<LinkAction> SlaOutputDev::SC_getAdditionalAction(const char *key, AnnotWidget *ano)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   std::unique_ptr<LinkAction> linkAction;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-LinkAction* SlaOutputDev::SC_getAdditionalAction(const char *key, AnnotWidget *ano)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  LinkAction *linkAction = nullptr;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   Object obj;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   Ref refa = ano->getRef();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -358,7 +362,12 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ GBool SlaOutputDev::annotations_callback(Annot *annota, void *user_data)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   SlaOutputDev *dev = (SlaOutputDev*)user_data;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(22, 4, 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  const PDFRectangle& annotRect = annota->getRect();;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  const PDFRectangle* box = &annotRect;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   PDFRectangle *box = annota->getRect();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   double xCoor = dev->m_doc->currentPage()->xOffset() + box->x1 - dev->cropOffsetX;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   double yCoor = dev->m_doc->currentPage()->yOffset() + dev->m_doc->currentPage()->height() - box->y2 + dev->cropOffsetY;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   double width = box->x2 - box->x1;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -462,11 +471,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           if (dst->isPageRef())
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                   Ref dstr = dst->getPageRef();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 76, 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                   pagNum = pdfDoc->findPage(dstr);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                                  pagNum = pdfDoc->findPage(dstr.num, dstr.gen);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                   pagNum = dst->getPageNum();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -480,11 +485,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   POPPLER_CONST GooString *ndst = gto->getNamedDest();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   if (ndst)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 86, 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           std::unique_ptr<LinkDest> dstn = pdfDoc->findDest(ndst);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                          LinkDest *dstn = pdfDoc->findDest(ndst);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           if (dstn)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                   if (dstn->getKind() == destXYZ)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -492,11 +493,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                           if (dstn->isPageRef())
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                           {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                                   Ref dstr = dstn->getPageRef();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 76, 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                                   pagNum = pdfDoc->findPage(dstr);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                                                  pagNum = pdfDoc->findPage(dstr.num, dstr.gen);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                           }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                           else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                                   pagNum = dstn->getPageNum();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -528,11 +525,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   POPPLER_CONST GooString *ndst = gto->getNamedDest();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   if (ndst)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 86, 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           std::unique_ptr<LinkDest> dstn = pdfDoc->findDest(ndst);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                          LinkDest *dstn = pdfDoc->findDest(ndst);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           if (dstn)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                   if (dstn->getKind() == destXYZ)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -701,7 +694,12 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   if (apa || !achar)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           AnoOutputDev *annotOutDev = new AnoOutputDev(m_doc, m_importedColors);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(22, 4, 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                          const PDFRectangle& annotaRect = annota->getRect();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                          Gfx* gfx = new Gfx(pdfDoc, annotOutDev, pdfDoc->getPage(m_actPage)->getResourceDict(), &annotaRect, nullptr);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           Gfx *gfx = new Gfx(pdfDoc, annotOutDev, pdfDoc->getPage(m_actPage)->getResourceDict(), annota->getRect(), nullptr);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           ano->draw(gfx, false);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           if (!bgFound)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                   m_currColorFill = annotOutDev->currColorFill;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -980,11 +978,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                   if (dst->isPageRef())
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                   {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                           Ref dstr = dst->getPageRef();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 76, 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                           pagNum = pdfDoc->findPage(dstr);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                                          pagNum = pdfDoc->findPage(dstr.num, dstr.gen);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                   }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                   else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                           pagNum = dst->getPageNum();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1000,11 +994,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           POPPLER_CONST GooString *ndst = gto->getNamedDest();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           if (ndst)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 86, 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                   std::unique_ptr<LinkDest> dstn = pdfDoc->findDest(ndst);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                                  LinkDest *dstn = pdfDoc->findDest(ndst);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                   if (dstn)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                   {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                           if (dstn->getKind() == destXYZ)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1012,11 +1002,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                                   if (dstn->isPageRef())
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                                   {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                                           Ref dstr = dstn->getPageRef();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 76, 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                                           pagNum = pdfDoc->findPage(dstr);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                                                          pagNum = pdfDoc->findPage(dstr.num, dstr.gen);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                                   }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                                   else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                                           pagNum = dstn->getPageNum();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1056,11 +1042,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           POPPLER_CONST GooString *ndst = gto->getNamedDest();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           if (ndst)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 86, 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                   std::unique_ptr<LinkDest> dstn = pdfDoc->findDest(ndst);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                                  LinkDest *dstn = pdfDoc->findDest(ndst);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                   if (dstn)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                   {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                           if (dstn->getKind() == destXYZ)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1134,143 +1116,91 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           if (Aact->getKind() == actionJavaScript)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 86, 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   LinkJavaScript *jsa = (LinkJavaScript*) Aact.get();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                  LinkJavaScript *jsa = (LinkJavaScript*) Aact;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   if (jsa->isOk())
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           ite->annotation().setD_act(UnicodeParsedString(jsa->getScript()));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           ite->annotation().setAAact(true);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 86, 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           Aact.reset();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-          Aact = nullptr;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   Aact = SC_getAdditionalAction("E", ano);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if (Aact)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           if (Aact->getKind() == actionJavaScript)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 86, 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   LinkJavaScript *jsa = (LinkJavaScript*) Aact.get();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                  LinkJavaScript *jsa = (LinkJavaScript*) Aact;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   if (jsa->isOk())
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           ite->annotation().setE_act(UnicodeParsedString(jsa->getScript()));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           ite->annotation().setAAact(true);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 86, 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           Aact.reset();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-          Aact = nullptr;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   Aact = SC_getAdditionalAction("X", ano);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if (Aact)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           if (Aact->getKind() == actionJavaScript)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 86, 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   LinkJavaScript *jsa = (LinkJavaScript*) Aact.get();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                  LinkJavaScript *jsa = (LinkJavaScript*) Aact;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   if (jsa->isOk())
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           ite->annotation().setX_act(UnicodeParsedString(jsa->getScript()));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           ite->annotation().setAAact(true);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 86, 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           Aact.reset();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-          Aact = nullptr;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   Aact = SC_getAdditionalAction("Fo", ano);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if (Aact)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           if (Aact->getKind() == actionJavaScript)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 86, 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   LinkJavaScript *jsa = (LinkJavaScript*) Aact.get();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                  LinkJavaScript *jsa = (LinkJavaScript*) Aact;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   if (jsa->isOk())
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           ite->annotation().setFo_act(UnicodeParsedString(jsa->getScript()));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           ite->annotation().setAAact(true);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 86, 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           Aact.reset();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-          Aact = nullptr;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   Aact = SC_getAdditionalAction("Bl", ano);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if (Aact)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           if (Aact->getKind() == actionJavaScript)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 86, 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   LinkJavaScript *jsa = (LinkJavaScript*) Aact.get();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                  LinkJavaScript *jsa = (LinkJavaScript*) Aact;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   if (jsa->isOk())
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           ite->annotation().setBl_act(UnicodeParsedString(jsa->getScript()));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           ite->annotation().setAAact(true);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 86, 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           Aact.reset();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-          Aact = nullptr;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   Aact = SC_getAdditionalAction("C", ano);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if (Aact)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           if (Aact->getKind() == actionJavaScript)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 86, 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   LinkJavaScript *jsa = (LinkJavaScript*) Aact.get();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                  LinkJavaScript *jsa = (LinkJavaScript*) Aact;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   if (jsa->isOk())
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           ite->annotation().setC_act(UnicodeParsedString(jsa->getScript()));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           ite->annotation().setAAact(true);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 86, 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           Aact.reset();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-          Aact = nullptr;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   Aact = SC_getAdditionalAction("F", ano);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if (Aact)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           if (Aact->getKind() == actionJavaScript)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 86, 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   LinkJavaScript *jsa = (LinkJavaScript*) Aact.get();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                  LinkJavaScript *jsa = (LinkJavaScript*) Aact;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   if (jsa->isOk())
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           ite->annotation().setF_act(UnicodeParsedString(jsa->getScript()));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1278,22 +1208,14 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           ite->annotation().setFormat(5);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 86, 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           Aact.reset();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-          Aact = nullptr;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   Aact = SC_getAdditionalAction("K", ano);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if (Aact)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           if (Aact->getKind() == actionJavaScript)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 86, 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   LinkJavaScript *jsa = (LinkJavaScript*) Aact.get();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                  LinkJavaScript *jsa = (LinkJavaScript*) Aact;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   if (jsa->isOk())
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           ite->annotation().setK_act(UnicodeParsedString(jsa->getScript()));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1301,33 +1223,21 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           ite->annotation().setFormat(5);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 86, 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           Aact.reset();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-          Aact = nullptr;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   Aact = SC_getAdditionalAction("V", ano);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if (Aact)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           if (Aact->getKind() == actionJavaScript)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 86, 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   LinkJavaScript *jsa = (LinkJavaScript*) Aact.get();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                  LinkJavaScript *jsa = (LinkJavaScript*) Aact;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   if (jsa->isOk())
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           ite->annotation().setV_act(UnicodeParsedString(jsa->getScript()));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           ite->annotation().setAAact(true);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 86, 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           Aact.reset();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-          Aact = nullptr;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1337,11 +1247,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   catalog = catA;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   pdfDoc = doc;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   updateGUICounter = 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 84, 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   m_fontEngine = new SplashFontEngine(true, false, false, true);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  m_fontEngine = new SplashFontEngine(globalParams->getEnableFreeType(), false, false, true);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ void SlaOutputDev::startPage(int pageNum, GfxState *, XRef *)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -3026,19 +2932,30 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ void SlaOutputDev::updateFont(GfxState *state)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  GfxFont *gfxFont;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  GfxFontLoc *fontLoc;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(22, 4, 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  std::optional<GfxFontLoc> fontLoc;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  std::string fileName;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  std::unique_ptr<FoFiTrueType> ff;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  std::optional<std::vector<unsigned char>> tmpBuf;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#elif POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(22, 2, 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  std::optional<GfxFontLoc> fontLoc;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  const GooString * fileName = nullptr;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  std::unique_ptr<FoFiTrueType> ff;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  char* tmpBuf = nullptr;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  GfxFontLoc * fontLoc = nullptr;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  GooString * fileName = nullptr;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  FoFiTrueType * ff = nullptr;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  char* tmpBuf = nullptr;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   GfxFontType fontType;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   SlaOutFontFileID *id;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   SplashFontFile *fontFile;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   SplashFontSrc *fontsrc = nullptr;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  FoFiTrueType *ff;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   Object refObj, strObj;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  GooString *fileName;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  char *tmpBuf;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   int tmpBufLen = 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  int *codeToGID;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  const double *textMat;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  int *codeToGID = nullptr;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  const double *textMat = nullptr;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   double m11, m12, m21, m22, fontSize;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   SplashCoord mat[4];
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   int n = 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -3046,11 +2963,12 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   SplashCoord matrix[6];
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   m_font = nullptr;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  fileName = nullptr;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  tmpBuf = nullptr;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  fontLoc = nullptr;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  gfxFont = state->getFont();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(22, 4, 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  GfxFont* gfxFont = state->getFont().get();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  GfxFont* gfxFont = state->getFont();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if (!gfxFont)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           goto err1;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -3075,94 +2993,106 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           if (fontLoc->locType == gfxFontLocEmbedded)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   // if there is an embedded font, read it to memory
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                  tmpBuf = gfxFont->readEmbFontFile(xref, &tmpBufLen);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(22, 4, 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                  tmpBuf = gfxFont->readEmbFontFile((xref) ? xref : pdfDoc->getXRef());
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   if (! tmpBuf)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           goto err2;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                  tmpBuf = gfxFont->readEmbFontFile(xref, &tmpBufLen);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                  if (!tmpBuf)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                          goto err2;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   // external font
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           { // gfxFontLocExternal
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(22, 4, 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                  fileName = fontLoc->path;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#elif POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(22, 2, 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                  fileName = fontLoc->pathAsGooString();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   fileName = fontLoc->path;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   fontType = fontLoc->fontType;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           fontsrc = new SplashFontSrc;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(22, 4, 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++          if (!fileName.empty())
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                  fontsrc->setFile(fileName);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++          else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                  fontsrc->setBuf(std::move(tmpBuf.value()));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           if (fileName)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   fontsrc->setFile(fileName, gFalse);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   fontsrc->setBuf(tmpBuf, tmpBufLen, gTrue);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           // load the font file
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           switch (fontType) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           case fontType1:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                  if (!(fontFile = m_fontEngine->loadType1Font(
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                          id,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                          fontsrc,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                          (const char **)((Gfx8BitFont *) gfxFont)->getEncoding())))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                  if (!(fontFile = m_fontEngine->loadType1Font(id, fontsrc, (const char **)((Gfx8BitFont *) gfxFont)->getEncoding())))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                          error(errSyntaxError, -1, "Couldn't create a font for '{0:s}'",
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                          gfxFont->getName() ? gfxFont->getName()->getCString() : "(unnamed)");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                          error(errSyntaxError, -1, "Couldn't create a font for '{0:s}'", gfxFont->getName() ? gfxFont->getName()->getCString() : "(unnamed)");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           goto err2;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   break;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           case fontType1C:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                  if (!(fontFile = m_fontEngine->loadType1CFont(
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                                                  id,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                                                  fontsrc,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                                                  (const char **)((Gfx8BitFont *) gfxFont)->getEncoding())))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                  if (!(fontFile = m_fontEngine->loadType1CFont(id, fontsrc, (const char **)((Gfx8BitFont *) gfxFont)->getEncoding())))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                          error(errSyntaxError, -1, "Couldn't create a font for '{0:s}'",
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                          gfxFont->getName() ? gfxFont->getName()->getCString() : "(unnamed)");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                          error(errSyntaxError, -1, "Couldn't create a font for '{0:s}'", gfxFont->getName() ? gfxFont->getName()->getCString() : "(unnamed)");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           goto err2;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   break;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           case fontType1COT:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                  if (!(fontFile = m_fontEngine->loadOpenTypeT1CFont(
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                                                  id,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                                                  fontsrc,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                                                  (const char **)((Gfx8BitFont *) gfxFont)->getEncoding())))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                  if (!(fontFile = m_fontEngine->loadOpenTypeT1CFont(id, fontsrc, (const char **)((Gfx8BitFont *) gfxFont)->getEncoding())))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                          error(errSyntaxError, -1, "Couldn't create a font for '{0:s}'",
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                          gfxFont->getName() ? gfxFont->getName()->getCString() : "(unnamed)");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                          error(errSyntaxError, -1, "Couldn't create a font for '{0:s}'", gfxFont->getName() ? gfxFont->getName()->getCString() : "(unnamed)");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           goto err2;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   break;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           case fontTrueType:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           case fontTrueTypeOT:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(22, 4, 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                  if (!fileName.empty())
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                          ff = FoFiTrueType::load(fileName.c_str());
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                  else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                          ff = FoFiTrueType::make(fontsrc->buf.data(), fontsrc->buf.size());
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   if (fileName)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           ff = FoFiTrueType::load(fileName->getCString());
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           ff = FoFiTrueType::make(tmpBuf, tmpBufLen);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   if (ff)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(22, 2, 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                          codeToGID = ((Gfx8BitFont*) gfxFont)->getCodeToGIDMap(ff.get());
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                          ff.reset();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           codeToGID = ((Gfx8BitFont *)gfxFont)->getCodeToGIDMap(ff);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                          n = 256;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           delete ff;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                          n = 256;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           codeToGID = nullptr;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           n = 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                  if (!(fontFile = m_fontEngine->loadTrueTypeFont(
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                                                  id,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                                                  fontsrc,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                                                  codeToGID, n)))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                  if (!(fontFile = m_fontEngine->loadTrueTypeFont(id, fontsrc, codeToGID, n)))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                          error(errSyntaxError, -1, "Couldn't create a font for '{0:s}'",
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                          gfxFont->getName() ? gfxFont->getName()->getCString() : "(unnamed)");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                          error(errSyntaxError, -1, "Couldn't create a font for '{0:s}'", gfxFont->getName() ? gfxFont->getName()->getCString() : "(unnamed)");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           goto err2;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   break;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           case fontCIDType0:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           case fontCIDType0C:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                  if (!(fontFile = m_fontEngine->loadCIDFont(
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                                                  id,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                                                  fontsrc)))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                  if (!(fontFile = m_fontEngine->loadCIDFont(id, fontsrc)))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                          error(errSyntaxError, -1, "Couldn't create a font for '{0:s}'",
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                          gfxFont->getName() ? gfxFont->getName()->getCString() : "(unnamed)");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                          error(errSyntaxError, -1, "Couldn't create a font for '{0:s}'", gfxFont->getName() ? gfxFont->getName()->getCString() : "(unnamed)");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           goto err2;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   break;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -3178,10 +3108,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           codeToGID = nullptr;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           n = 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                  if (!(fontFile = m_fontEngine->loadOpenTypeCFFFont(
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                                                  id,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                                                  fontsrc,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                                                  codeToGID, n)))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                  if (!(fontFile = m_fontEngine->loadOpenTypeCFFFont(id, fontsrc, codeToGID, n)))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           error(errSyntaxError, -1, "Couldn't create a font for '{0:s}'",
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           gfxFont->getName() ? gfxFont->getName()->getCString() : "(unnamed)");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -3203,22 +3130,30 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(22, 4, 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                          if (!fileName.empty())
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                                  ff = FoFiTrueType::load(fileName.c_str());
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                          else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                                  ff = FoFiTrueType::make(fontsrc->buf.data(), fontsrc->buf.size());
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           if (fileName)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                   ff = FoFiTrueType::load(fileName->getCString());
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                   ff = FoFiTrueType::make(tmpBuf, tmpBufLen);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           if (! ff)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                   goto err2;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(22, 2, 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                          codeToGID = ((GfxCIDFont*) gfxFont)->getCodeToGIDMap(ff.get(), &n);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                          ff.reset();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           codeToGID = ((GfxCIDFont *)gfxFont)->getCodeToGIDMap(ff, &n);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           delete ff;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                  if (!(fontFile = m_fontEngine->loadTrueTypeFont(
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                                                  id,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                                                  fontsrc,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                                                  codeToGID, n, faceIndex)))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                  if (!(fontFile = m_fontEngine->loadTrueTypeFont(id, fontsrc, codeToGID, n, faceIndex)))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                          error(errSyntaxError, -1, "Couldn't create a font for '{0:s}'",
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                          gfxFont->getName() ? gfxFont->getName()->getCString() : "(unnamed)");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                          error(errSyntaxError, -1, "Couldn't create a font for '{0:s}'", gfxFont->getName() ? gfxFont->getName()->getCString() : "(unnamed)");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           goto err2;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   break;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -3247,14 +3182,19 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   mat[3] = -m22;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   m_font = m_fontEngine->getFont(fontFile, mat, matrix);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if POPPLER_ENCODED_VERSION < POPPLER_VERSION_ENCODE(22, 2, 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   delete fontLoc;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if (fontsrc && !fontsrc->isFile)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           fontsrc->unref();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   return;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ err2:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   delete id;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if POPPLER_ENCODED_VERSION < POPPLER_VERSION_ENCODE(22, 2, 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   delete fontLoc;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ err1:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if (fontsrc && !fontsrc->isFile)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           fontsrc->unref();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -3357,9 +3297,15 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ GBool SlaOutputDev::beginType3Char(GfxState *state, double x, double y, double dx, double dy, CharCode code, POPPLER_CONST_082 Unicode *u, int uLen)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ //        qDebug() << "beginType3Char";
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(22, 4, 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   GfxFont *gfxFont;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  if (!(gfxFont = state->getFont().get()))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++          return gTrue;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  GfxFont* gfxFont;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if (!(gfxFont = state->getFont()))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           return gTrue;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if (gfxFont->getType() != fontType3)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           return gTrue;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   F3Entry f3e;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -3680,16 +3626,21 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   m_lineJoin = Qt::BevelJoin;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   break;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  double lw = state->getLineWidth();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  double *dashPattern;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(22, 9, 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  const auto& dashPattern = state->getLineDash(&DashOffset);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  QVector<double> pattern(dashPattern.size());
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  for (size_t i = 0; i < dashPattern.size(); ++i)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++          pattern[i] = dashPattern[i];
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  DashValues = pattern;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  double* dashPattern;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   int dashLength;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   state->getLineDash(&dashPattern, &dashLength, &DashOffset);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   QVector<double> pattern(dashLength);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   for (int i = 0; i < dashLength; ++i)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-          pattern[i] = dashPattern[i] / lw;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++          pattern[i] = dashPattern[i];
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   DashValues = pattern;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ int SlaOutputDev::getBlendMode(GfxState *state)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- scribus/plugins/import/pdf/slaoutput.h.orig    2023-06-30 03:49:02.000000000 -0500
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ scribus/plugins/import/pdf/slaoutput.h 2023-06-30 03:49:11.000000000 -0500
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -30,9 +30,6 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "selection.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "vgradient.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#if POPPLER_ENCODED_VERSION < POPPLER_VERSION_ENCODE(0, 73, 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#include <poppler/goo/gtypes.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <poppler/Object.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <poppler/OutputDev.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <poppler/Gfx.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -163,11 +160,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   virtual ~SlaOutputDev();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   LinkAction* SC_getAction(AnnotWidget *ano);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 86, 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   std::unique_ptr<LinkAction> SC_getAdditionalAction(const char *key, AnnotWidget *ano);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  LinkAction* SC_getAdditionalAction(const char *key, AnnotWidget *ano);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   static GBool annotations_callback(Annot *annota, void *user_data);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   bool handleTextAnnot(Annot* annota, double xCoor, double yCoor, double width, double height);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   bool handleLinkAnnot(Annot* annota, double xCoor, double yCoor, double width, double height);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- scribus/util_os.cpp.orig       2022-01-23 10:16:21.000000000 -0600
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ scribus/util_os.cpp    2023-06-30 03:49:11.000000000 -0500
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -22,6 +22,8 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <QtGlobal>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#include "util_os.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ bool os_is_osx()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #ifdef Q_OS_MACOS
</span></pre><pre style='margin:0'>

</pre>