forked from pool/scribus
Accepting request 959369 from home:cgiboudeaux:poppler2203
Poppler 22.02 and 22.03 build fixes OBS-URL: https://build.opensuse.org/request/show/959369 OBS-URL: https://build.opensuse.org/package/show/KDE:Extra/scribus?expand=0&rev=75
This commit is contained in:
parent
fe5e52908f
commit
ba9c98bd92
132
0001-16734-Build-break-with-poppler-22.2.0.patch
Normal file
132
0001-16734-Build-break-with-poppler-22.2.0.patch
Normal file
@ -0,0 +1,132 @@
|
|||||||
|
From 699df2330c9bd28a43fa7a5ec25581ca22ddb898 Mon Sep 17 00:00:00 2001
|
||||||
|
From: jghali <jghali@11d20701-8431-0410-a711-e3c959e3b870>
|
||||||
|
Date: Wed, 2 Feb 2022 23:12:52 +0000
|
||||||
|
Subject: [PATCH] #16734: Build break with poppler 22.2.0
|
||||||
|
|
||||||
|
git-svn-id: svn://scribus.net/trunk/Scribus@24884 11d20701-8431-0410-a711-e3c959e3b870
|
||||||
|
---
|
||||||
|
scribus/plugins/import/pdf/slaoutput.cpp | 47 +++++++++++++++++++-----
|
||||||
|
1 file changed, 37 insertions(+), 10 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/scribus/plugins/import/pdf/slaoutput.cpp b/scribus/plugins/import/pdf/slaoutput.cpp
|
||||||
|
index 5894bf2ad..3650c96f5 100644
|
||||||
|
--- a/scribus/plugins/import/pdf/slaoutput.cpp
|
||||||
|
+++ b/scribus/plugins/import/pdf/slaoutput.cpp
|
||||||
|
@@ -7,6 +7,11 @@ for which a new license (GPL+exception) is in place.
|
||||||
|
|
||||||
|
#include "slaoutput.h"
|
||||||
|
|
||||||
|
+#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(22, 2, 0)
|
||||||
|
+#include <memory>
|
||||||
|
+#include <optional>
|
||||||
|
+#endif
|
||||||
|
+
|
||||||
|
#include <poppler/GlobalParams.h>
|
||||||
|
#include <poppler/poppler-config.h>
|
||||||
|
#include <poppler/FileSpec.h>
|
||||||
|
@@ -3027,18 +3032,24 @@ void SlaOutputDev::markPoint(POPPLER_CONST char *name, Dict *properties)
|
||||||
|
void SlaOutputDev::updateFont(GfxState *state)
|
||||||
|
{
|
||||||
|
GfxFont *gfxFont;
|
||||||
|
- GfxFontLoc *fontLoc;
|
||||||
|
+#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(22, 2, 0)
|
||||||
|
+ std::optional<GfxFontLoc> fontLoc;
|
||||||
|
+ const GooString * fileName = nullptr;
|
||||||
|
+ std::unique_ptr<FoFiTrueType> ff;
|
||||||
|
+#else
|
||||||
|
+ GfxFontLoc * fontLoc = nullptr;
|
||||||
|
+ GooString * fileName = nullptr;
|
||||||
|
+ FoFiTrueType * ff = nullptr;
|
||||||
|
+#endif
|
||||||
|
GfxFontType fontType;
|
||||||
|
SlaOutFontFileID *id;
|
||||||
|
SplashFontFile *fontFile;
|
||||||
|
SplashFontSrc *fontsrc = nullptr;
|
||||||
|
- FoFiTrueType *ff;
|
||||||
|
Object refObj, strObj;
|
||||||
|
- GooString *fileName;
|
||||||
|
- char *tmpBuf;
|
||||||
|
+ char *tmpBuf = nullptr;
|
||||||
|
int tmpBufLen = 0;
|
||||||
|
- int *codeToGID;
|
||||||
|
- const double *textMat;
|
||||||
|
+ int *codeToGID = nullptr;
|
||||||
|
+ const double *textMat = nullptr;
|
||||||
|
double m11, m12, m21, m22, fontSize;
|
||||||
|
SplashCoord mat[4];
|
||||||
|
int n = 0;
|
||||||
|
@@ -3046,9 +3057,6 @@ void SlaOutputDev::updateFont(GfxState *state)
|
||||||
|
SplashCoord matrix[6];
|
||||||
|
|
||||||
|
m_font = nullptr;
|
||||||
|
- fileName = nullptr;
|
||||||
|
- tmpBuf = nullptr;
|
||||||
|
- fontLoc = nullptr;
|
||||||
|
|
||||||
|
gfxFont = state->getFont();
|
||||||
|
if (!gfxFont)
|
||||||
|
@@ -3083,7 +3091,11 @@ void SlaOutputDev::updateFont(GfxState *state)
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{ // gfxFontLocExternal
|
||||||
|
+#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(22, 2, 0)
|
||||||
|
+ fileName = fontLoc->pathAsGooString();
|
||||||
|
+#else
|
||||||
|
fileName = fontLoc->path;
|
||||||
|
+#endif
|
||||||
|
fontType = fontLoc->fontType;
|
||||||
|
}
|
||||||
|
|
||||||
|
@@ -3136,9 +3148,14 @@ void SlaOutputDev::updateFont(GfxState *state)
|
||||||
|
ff = FoFiTrueType::make(tmpBuf, tmpBufLen);
|
||||||
|
if (ff)
|
||||||
|
{
|
||||||
|
+#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(22, 2, 0)
|
||||||
|
+ codeToGID = ((Gfx8BitFont*) gfxFont)->getCodeToGIDMap(ff.get());
|
||||||
|
+ ff.reset();
|
||||||
|
+#else
|
||||||
|
codeToGID = ((Gfx8BitFont *)gfxFont)->getCodeToGIDMap(ff);
|
||||||
|
- n = 256;
|
||||||
|
delete ff;
|
||||||
|
+#endif
|
||||||
|
+ n = 256;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
@@ -3209,8 +3226,13 @@ void SlaOutputDev::updateFont(GfxState *state)
|
||||||
|
ff = FoFiTrueType::make(tmpBuf, tmpBufLen);
|
||||||
|
if (! ff)
|
||||||
|
goto err2;
|
||||||
|
+#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(22, 2, 0)
|
||||||
|
+ codeToGID = ((GfxCIDFont*) gfxFont)->getCodeToGIDMap(ff.get(), &n);
|
||||||
|
+ ff.reset();
|
||||||
|
+#else
|
||||||
|
codeToGID = ((GfxCIDFont *)gfxFont)->getCodeToGIDMap(ff, &n);
|
||||||
|
delete ff;
|
||||||
|
+#endif
|
||||||
|
}
|
||||||
|
if (!(fontFile = m_fontEngine->loadTrueTypeFont(
|
||||||
|
id,
|
||||||
|
@@ -3247,14 +3269,19 @@ void SlaOutputDev::updateFont(GfxState *state)
|
||||||
|
mat[3] = -m22;
|
||||||
|
m_font = m_fontEngine->getFont(fontFile, mat, matrix);
|
||||||
|
|
||||||
|
+#if POPPLER_ENCODED_VERSION < POPPLER_VERSION_ENCODE(22, 2, 0)
|
||||||
|
delete fontLoc;
|
||||||
|
+#endif
|
||||||
|
if (fontsrc && !fontsrc->isFile)
|
||||||
|
fontsrc->unref();
|
||||||
|
return;
|
||||||
|
|
||||||
|
err2:
|
||||||
|
delete id;
|
||||||
|
+#if POPPLER_ENCODED_VERSION < POPPLER_VERSION_ENCODE(22, 2, 0)
|
||||||
|
delete fontLoc;
|
||||||
|
+#endif
|
||||||
|
+
|
||||||
|
err1:
|
||||||
|
if (fontsrc && !fontsrc->isFile)
|
||||||
|
fontsrc->unref();
|
||||||
|
--
|
||||||
|
2.35.1
|
||||||
|
|
101
0001-16764-Better-patch-avoid-a-memory-leak.patch
Normal file
101
0001-16764-Better-patch-avoid-a-memory-leak.patch
Normal file
@ -0,0 +1,101 @@
|
|||||||
|
From 20c1757209a9742edd2b1c524acb88ae1c557d73 Mon Sep 17 00:00:00 2001
|
||||||
|
From: jghali <jghali@11d20701-8431-0410-a711-e3c959e3b870>
|
||||||
|
Date: Thu, 3 Mar 2022 00:18:06 +0000
|
||||||
|
Subject: [PATCH] #16764: Better patch, avoid a memory leak
|
||||||
|
|
||||||
|
git-svn-id: svn://scribus.net/trunk/Scribus@24989 11d20701-8431-0410-a711-e3c959e3b870
|
||||||
|
---
|
||||||
|
scribus/plugins/import/pdf/importpdf.cpp | 34 +++++++++---------------
|
||||||
|
scribus/util_os.cpp | 2 ++
|
||||||
|
2 files changed, 15 insertions(+), 21 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/scribus/plugins/import/pdf/importpdf.cpp b/scribus/plugins/import/pdf/importpdf.cpp
|
||||||
|
index 970a1a37c..7da93a5b2 100644
|
||||||
|
--- a/scribus/plugins/import/pdf/importpdf.cpp
|
||||||
|
+++ b/scribus/plugins/import/pdf/importpdf.cpp
|
||||||
|
@@ -57,6 +57,7 @@ for which a new license (GPL+exception) is in place.
|
||||||
|
#include "util.h"
|
||||||
|
#include "util_formats.h"
|
||||||
|
#include "util_math.h"
|
||||||
|
+#include "util_os.h"
|
||||||
|
|
||||||
|
#include "ui/customfdialog.h"
|
||||||
|
#include "ui/missing.h"
|
||||||
|
@@ -78,15 +79,12 @@ QImage PdfPlug::readThumbnail(const QString& fName)
|
||||||
|
globalParams->setErrQuiet(gTrue);
|
||||||
|
|
||||||
|
QString pdfFile = QDir::toNativeSeparators(fName);
|
||||||
|
-#if defined(Q_OS_WIN32)
|
||||||
|
- auto fname = new GooString(pdfFile.toUtf8().data());
|
||||||
|
-#else
|
||||||
|
- auto fname = new GooString(QFile::encodeName(pdfFile).data());
|
||||||
|
-#endif
|
||||||
|
-
|
||||||
|
+ QByteArray encodedFileName = os_is_win() ? pdfFile.toUtf8() : QFile::encodeName(pdfFile);
|
||||||
|
#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(22, 3, 0)
|
||||||
|
- PDFDoc pdfDoc{ std::make_unique<GooString>(fname) };
|
||||||
|
+ auto fname = std::make_unique<GooString>(encodedFileName.data());
|
||||||
|
+ PDFDoc pdfDoc{ std::move(fname) };
|
||||||
|
#else
|
||||||
|
+ auto fname = new GooString(encodedFileName.data());
|
||||||
|
PDFDoc pdfDoc{fname, nullptr, nullptr, nullptr};
|
||||||
|
#endif
|
||||||
|
if (!pdfDoc.isOk() || pdfDoc.getErrorCode() == errEncrypted)
|
||||||
|
@@ -330,17 +328,14 @@ bool PdfPlug::convert(const QString& fn)
|
||||||
|
globalParams.reset(new GlobalParams());
|
||||||
|
globalParams->setErrQuiet(gTrue);
|
||||||
|
|
||||||
|
-#if defined(Q_OS_WIN32)
|
||||||
|
- auto fname = new GooString(fn.toUtf8().data());
|
||||||
|
-#else
|
||||||
|
- auto fname = new GooString(QFile::encodeName(fn).data());
|
||||||
|
-#endif
|
||||||
|
-
|
||||||
|
QList<OptionalContentGroup*> ocgGroups;
|
||||||
|
+ QByteArray encodedFileName = os_is_win() ? fn.toUtf8() : QFile::encodeName(fn);
|
||||||
|
#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(22, 3, 0)
|
||||||
|
- auto pdfDoc = std::make_unique<PDFDoc>(std::make_unique<GooString>(fname));
|
||||||
|
+ auto fname = std::make_unique<GooString>(encodedFileName.data());
|
||||||
|
+ auto pdfDoc = std::make_unique<PDFDoc>(std::move(fname));
|
||||||
|
#else
|
||||||
|
- auto pdfDoc = std::unique_ptr<PDFDoc>(new PDFDoc(fname, nullptr, nullptr, nullptr));
|
||||||
|
+ auto fname = new GooString(encodedFileName.data());
|
||||||
|
+ auto pdfDoc = std::make_unique<PDFDoc>(fname, nullptr, nullptr, nullptr);
|
||||||
|
#endif
|
||||||
|
if (pdfDoc)
|
||||||
|
{
|
||||||
|
@@ -355,15 +350,12 @@ bool PdfPlug::convert(const QString& fn)
|
||||||
|
QString text = QInputDialog::getText(mw, tr("Open PDF-File"), tr("Password"), QLineEdit::Normal, "", &ok);
|
||||||
|
if (ok && !text.isEmpty())
|
||||||
|
{
|
||||||
|
-#if defined(Q_OS_WIN32)
|
||||||
|
- auto fname = new GooString(fn.toUtf8().data());
|
||||||
|
-#else
|
||||||
|
- auto fname = new GooString(QFile::encodeName(fn).data());
|
||||||
|
-#endif
|
||||||
|
#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(22, 3, 0)
|
||||||
|
+ auto fname = std::make_unique<GooString>(encodedFileName.data());
|
||||||
|
std::optional<GooString> userPW(std::in_place, text.toLocal8Bit().data());
|
||||||
|
- pdfDoc.reset(new PDFDoc(std::make_unique<GooString>(fname), userPW, userPW, nullptr));
|
||||||
|
+ pdfDoc.reset(new PDFDoc(std::move(fname), userPW, userPW, nullptr));
|
||||||
|
#else
|
||||||
|
+ auto fname = new GooString(encodedFileName.data());
|
||||||
|
auto userPW = new GooString(text.toLocal8Bit().data());
|
||||||
|
pdfDoc.reset(new PDFDoc(fname, userPW, userPW, nullptr));
|
||||||
|
#endif
|
||||||
|
diff --git a/scribus/util_os.cpp b/scribus/util_os.cpp
|
||||||
|
index fadf37d59..56e50aec3 100644
|
||||||
|
--- a/scribus/util_os.cpp
|
||||||
|
+++ b/scribus/util_os.cpp
|
||||||
|
@@ -22,6 +22,8 @@ for which a new license (GPL+exception) is in place.
|
||||||
|
|
||||||
|
#include <QtGlobal>
|
||||||
|
|
||||||
|
+#include "util_os.h"
|
||||||
|
+
|
||||||
|
bool os_is_osx()
|
||||||
|
{
|
||||||
|
#ifdef Q_OS_MACOS
|
||||||
|
--
|
||||||
|
2.35.1
|
||||||
|
|
55
0001-16764-Build-break-with-poppler-22.03.0.patch
Normal file
55
0001-16764-Build-break-with-poppler-22.03.0.patch
Normal file
@ -0,0 +1,55 @@
|
|||||||
|
From 6512c88e45ad8406949a238962b9523f9c21e0c3 Mon Sep 17 00:00:00 2001
|
||||||
|
From: jghali <jghali@11d20701-8431-0410-a711-e3c959e3b870>
|
||||||
|
Date: Wed, 2 Mar 2022 22:22:53 +0000
|
||||||
|
Subject: [PATCH] #16764: Build break with poppler 22.03.0
|
||||||
|
|
||||||
|
git-svn-id: svn://scribus.net/trunk/Scribus@24982 11d20701-8431-0410-a711-e3c959e3b870
|
||||||
|
---
|
||||||
|
scribus/plugins/import/pdf/importpdf.cpp | 13 +++++++++++++
|
||||||
|
1 file changed, 13 insertions(+)
|
||||||
|
|
||||||
|
diff --git a/scribus/plugins/import/pdf/importpdf.cpp b/scribus/plugins/import/pdf/importpdf.cpp
|
||||||
|
index 154e58a3f..392dcd9e6 100644
|
||||||
|
--- a/scribus/plugins/import/pdf/importpdf.cpp
|
||||||
|
+++ b/scribus/plugins/import/pdf/importpdf.cpp
|
||||||
|
@@ -89,7 +89,11 @@ QImage PdfPlug::readThumbnail(const QString& fName)
|
||||||
|
#endif
|
||||||
|
globalParams->setErrQuiet(gTrue);
|
||||||
|
|
||||||
|
+#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(22, 3, 0)
|
||||||
|
+ PDFDoc pdfDoc{ std::make_unique<GooString>(fname) };
|
||||||
|
+#else
|
||||||
|
PDFDoc pdfDoc{fname, nullptr, nullptr, nullptr};
|
||||||
|
+#endif
|
||||||
|
if (!pdfDoc.isOk() || pdfDoc.getErrorCode() == errEncrypted)
|
||||||
|
return QImage();
|
||||||
|
|
||||||
|
@@ -342,7 +346,11 @@ bool PdfPlug::convert(const QString& fn)
|
||||||
|
globalParams->setErrQuiet(gTrue);
|
||||||
|
// globalParams->setPrintCommands(gTrue);
|
||||||
|
QList<OptionalContentGroup*> ocgGroups;
|
||||||
|
+#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(22, 3, 0)
|
||||||
|
+ auto pdfDoc = std::make_unique<PDFDoc>(std::make_unique<GooString>(fname));
|
||||||
|
+#else
|
||||||
|
auto pdfDoc = std::unique_ptr<PDFDoc>(new PDFDoc(fname, nullptr, nullptr, nullptr));
|
||||||
|
+#endif
|
||||||
|
if (pdfDoc)
|
||||||
|
{
|
||||||
|
if (pdfDoc->getErrorCode() == errEncrypted)
|
||||||
|
@@ -361,8 +369,13 @@ bool PdfPlug::convert(const QString& fn)
|
||||||
|
#else
|
||||||
|
auto fname = new GooString(QFile::encodeName(fn).data());
|
||||||
|
#endif
|
||||||
|
+#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(22, 3, 0)
|
||||||
|
+ std::optional<GooString> userPW(std::in_place, text.toLocal8Bit().data());
|
||||||
|
+ pdfDoc.reset(new PDFDoc(std::make_unique<GooString>(fname), userPW, userPW, nullptr));
|
||||||
|
+#else
|
||||||
|
auto userPW = new GooString(text.toLocal8Bit().data());
|
||||||
|
pdfDoc.reset(new PDFDoc(fname, userPW, userPW, nullptr));
|
||||||
|
+#endif
|
||||||
|
qApp->changeOverrideCursor(QCursor(Qt::WaitCursor));
|
||||||
|
}
|
||||||
|
if ((!pdfDoc) || (pdfDoc->getErrorCode() != errNone))
|
||||||
|
--
|
||||||
|
2.35.1
|
||||||
|
|
537
0001-Enforce-poppler-version-0.86.0.patch
Normal file
537
0001-Enforce-poppler-version-0.86.0.patch
Normal file
@ -0,0 +1,537 @@
|
|||||||
|
From 5838ad95e3378c0417bbd42d66ab24b63d585c92 Mon Sep 17 00:00:00 2001
|
||||||
|
From: jghali <jghali@11d20701-8431-0410-a711-e3c959e3b870>
|
||||||
|
Date: Wed, 2 Mar 2022 22:48:29 +0000
|
||||||
|
Subject: [PATCH] Enforce poppler version >= 0.86.0
|
||||||
|
|
||||||
|
git-svn-id: svn://scribus.net/trunk/Scribus@24985 11d20701-8431-0410-a711-e3c959e3b870
|
||||||
|
---
|
||||||
|
cmake/modules/Findpoppler.cmake | 4 +-
|
||||||
|
scribus/plugins/import/pdf/importpdf.cpp | 65 ++-----------
|
||||||
|
scribus/plugins/import/pdf/slaoutput.cpp | 114 -----------------------
|
||||||
|
scribus/plugins/import/pdf/slaoutput.h | 7 --
|
||||||
|
4 files changed, 10 insertions(+), 180 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/cmake/modules/Findpoppler.cmake b/cmake/modules/Findpoppler.cmake
|
||||||
|
index 56ce613ae..9cab5532a 100644
|
||||||
|
--- a/cmake/modules/Findpoppler.cmake
|
||||||
|
+++ b/cmake/modules/Findpoppler.cmake
|
||||||
|
@@ -1,8 +1,8 @@
|
||||||
|
#include(FindPkgConfig)
|
||||||
|
find_package(PkgConfig QUIET)
|
||||||
|
-pkg_search_module(poppler libpoppler>=0.62.0 poppler>=0.62.0)
|
||||||
|
+pkg_search_module(poppler libpoppler>=0.86.0 poppler>=0.86.0)
|
||||||
|
if (poppler_FOUND)
|
||||||
|
- pkg_search_module(poppler_cpp REQUIRED libpoppler-cpp>=0.62.0 poppler-cpp>=0.62.0)
|
||||||
|
+ pkg_search_module(poppler_cpp REQUIRED libpoppler-cpp>=0.86.0 poppler-cpp>=0.86.0)
|
||||||
|
endif(poppler_FOUND)
|
||||||
|
|
||||||
|
find_path(poppler_INCLUDE_DIR
|
||||||
|
diff --git a/scribus/plugins/import/pdf/importpdf.cpp b/scribus/plugins/import/pdf/importpdf.cpp
|
||||||
|
index 392dcd9e6..970a1a37c 100644
|
||||||
|
--- a/scribus/plugins/import/pdf/importpdf.cpp
|
||||||
|
+++ b/scribus/plugins/import/pdf/importpdf.cpp
|
||||||
|
@@ -74,20 +74,15 @@ PdfPlug::PdfPlug(ScribusDoc* doc, int flags)
|
||||||
|
|
||||||
|
QImage PdfPlug::readThumbnail(const QString& fName)
|
||||||
|
{
|
||||||
|
- QString pdfFile = QDir::toNativeSeparators(fName);
|
||||||
|
-#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 83, 0)
|
||||||
|
globalParams.reset(new GlobalParams());
|
||||||
|
-#else
|
||||||
|
- std::unique_ptr<GlobalParams> globalParamsPtr(new GlobalParams());
|
||||||
|
- globalParams = globalParamsPtr.get();
|
||||||
|
-#endif
|
||||||
|
+ globalParams->setErrQuiet(gTrue);
|
||||||
|
|
||||||
|
-#if defined(Q_OS_WIN32) && POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 62, 0)
|
||||||
|
+ QString pdfFile = QDir::toNativeSeparators(fName);
|
||||||
|
+#if defined(Q_OS_WIN32)
|
||||||
|
auto fname = new GooString(pdfFile.toUtf8().data());
|
||||||
|
#else
|
||||||
|
auto fname = new GooString(QFile::encodeName(pdfFile).data());
|
||||||
|
#endif
|
||||||
|
- globalParams->setErrQuiet(gTrue);
|
||||||
|
|
||||||
|
#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(22, 3, 0)
|
||||||
|
PDFDoc pdfDoc{ std::make_unique<GooString>(fname) };
|
||||||
|
@@ -332,19 +327,15 @@ bool PdfPlug::convert(const QString& fn)
|
||||||
|
qApp->processEvents();
|
||||||
|
}
|
||||||
|
|
||||||
|
-#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 83, 0)
|
||||||
|
globalParams.reset(new GlobalParams());
|
||||||
|
-#else
|
||||||
|
- std::unique_ptr<GlobalParams> globalParamsPtr(new GlobalParams());
|
||||||
|
- globalParams = globalParamsPtr.get();
|
||||||
|
-#endif
|
||||||
|
-#if defined(Q_OS_WIN32) && POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 62, 0)
|
||||||
|
+ globalParams->setErrQuiet(gTrue);
|
||||||
|
+
|
||||||
|
+#if defined(Q_OS_WIN32)
|
||||||
|
auto fname = new GooString(fn.toUtf8().data());
|
||||||
|
#else
|
||||||
|
auto fname = new GooString(QFile::encodeName(fn).data());
|
||||||
|
#endif
|
||||||
|
- globalParams->setErrQuiet(gTrue);
|
||||||
|
-// globalParams->setPrintCommands(gTrue);
|
||||||
|
+
|
||||||
|
QList<OptionalContentGroup*> ocgGroups;
|
||||||
|
#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(22, 3, 0)
|
||||||
|
auto pdfDoc = std::make_unique<PDFDoc>(std::make_unique<GooString>(fname));
|
||||||
|
@@ -364,7 +355,7 @@ bool PdfPlug::convert(const QString& fn)
|
||||||
|
QString text = QInputDialog::getText(mw, tr("Open PDF-File"), tr("Password"), QLineEdit::Normal, "", &ok);
|
||||||
|
if (ok && !text.isEmpty())
|
||||||
|
{
|
||||||
|
-#if defined(Q_OS_WIN32) && POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 62, 0)
|
||||||
|
+#if defined(Q_OS_WIN32)
|
||||||
|
auto fname = new GooString(fn.toUtf8().data());
|
||||||
|
#else
|
||||||
|
auto fname = new GooString(QFile::encodeName(fn).data());
|
||||||
|
@@ -382,9 +373,6 @@ bool PdfPlug::convert(const QString& fn)
|
||||||
|
{
|
||||||
|
if (m_progressDialog)
|
||||||
|
m_progressDialog->close();
|
||||||
|
-#if POPPLER_ENCODED_VERSION < POPPLER_VERSION_ENCODE(0, 83, 0)
|
||||||
|
- delete globalParams;
|
||||||
|
-#endif
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
if (m_progressDialog)
|
||||||
|
@@ -494,7 +482,6 @@ bool PdfPlug::convert(const QString& fn)
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
-#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 69, 0)
|
||||||
|
const auto& ocgs = ocg->getOCGs ();
|
||||||
|
for (const auto& ocg : ocgs)
|
||||||
|
{
|
||||||
|
@@ -506,25 +493,11 @@ bool PdfPlug::convert(const QString& fn)
|
||||||
|
ocgNames.append(ocgName);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
-#else
|
||||||
|
- GooList *ocgs = ocg->getOCGs ();
|
||||||
|
- for (int i = 0; i < ocgs->getLength (); ++i)
|
||||||
|
- {
|
||||||
|
- OptionalContentGroup *oc = (OptionalContentGroup *)ocgs->get(i);
|
||||||
|
- QString ocgName = UnicodeParsedString(oc->getName());
|
||||||
|
- if (!ocgNames.contains(ocgName))
|
||||||
|
- {
|
||||||
|
- ocgGroups.prepend(oc);
|
||||||
|
- ocgNames.append(ocgName);
|
||||||
|
- }
|
||||||
|
- }
|
||||||
|
-#endif
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
-#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 69, 0)
|
||||||
|
const auto& ocgs = ocg->getOCGs ();
|
||||||
|
for (const auto& ocg : ocgs)
|
||||||
|
{
|
||||||
|
@@ -536,19 +509,6 @@ bool PdfPlug::convert(const QString& fn)
|
||||||
|
ocgNames.append(ocgName);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
-#else
|
||||||
|
- GooList *ocgs = ocg->getOCGs ();
|
||||||
|
- for (int i = 0; i < ocgs->getLength (); ++i)
|
||||||
|
- {
|
||||||
|
- OptionalContentGroup *oc = (OptionalContentGroup *)ocgs->get(i);
|
||||||
|
- QString ocgName = UnicodeParsedString(oc->getName());
|
||||||
|
- if (!ocgNames.contains(ocgName))
|
||||||
|
- {
|
||||||
|
- ocgGroups.prepend(oc);
|
||||||
|
- ocgNames.append(ocgName);
|
||||||
|
- }
|
||||||
|
- }
|
||||||
|
-#endif
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@@ -787,13 +747,8 @@ bool PdfPlug::convert(const QString& fn)
|
||||||
|
names = catDict.dictLookup("OpenAction");
|
||||||
|
if (names.isDict())
|
||||||
|
{
|
||||||
|
-#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 86, 0)
|
||||||
|
std::unique_ptr<LinkAction> linkActionUPtr = LinkAction::parseAction(&names, pdfDoc->getCatalog()->getBaseURI());
|
||||||
|
LinkAction *linkAction = linkActionUPtr.get();
|
||||||
|
-#else
|
||||||
|
- LinkAction *linkAction = nullptr;
|
||||||
|
- linkAction = LinkAction::parseAction(&names, pdfDoc->getCatalog()->getBaseURI());
|
||||||
|
-#endif
|
||||||
|
if (linkAction && (linkAction->getKind() == actionJavaScript))
|
||||||
|
{
|
||||||
|
LinkJavaScript *jsa = (LinkJavaScript*) linkAction;
|
||||||
|
@@ -861,11 +816,7 @@ bool PdfPlug::convert(const QString& fn)
|
||||||
|
}
|
||||||
|
pdfDoc.reset();
|
||||||
|
}
|
||||||
|
-#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 83, 0)
|
||||||
|
globalParams.reset();
|
||||||
|
-#else
|
||||||
|
- globalParams = nullptr;
|
||||||
|
-#endif
|
||||||
|
|
||||||
|
// qDebug() << "converting finished";
|
||||||
|
// qDebug() << "Imported" << m_elements.count() << "Elements";
|
||||||
|
diff --git a/scribus/plugins/import/pdf/slaoutput.cpp b/scribus/plugins/import/pdf/slaoutput.cpp
|
||||||
|
index a6f4e00fa..b6f2b8c21 100644
|
||||||
|
--- a/scribus/plugins/import/pdf/slaoutput.cpp
|
||||||
|
+++ b/scribus/plugins/import/pdf/slaoutput.cpp
|
||||||
|
@@ -332,15 +332,9 @@ LinkAction* SlaOutputDev::SC_getAction(AnnotWidget *ano)
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Replacement for the crippled Poppler function LinkAction* AnnotWidget::getAdditionalAction(AdditionalActionsType type) */
|
||||||
|
-#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 86, 0)
|
||||||
|
std::unique_ptr<LinkAction> SlaOutputDev::SC_getAdditionalAction(const char *key, AnnotWidget *ano)
|
||||||
|
{
|
||||||
|
std::unique_ptr<LinkAction> linkAction;
|
||||||
|
-#else
|
||||||
|
-LinkAction* SlaOutputDev::SC_getAdditionalAction(const char *key, AnnotWidget *ano)
|
||||||
|
-{
|
||||||
|
- LinkAction *linkAction = nullptr;
|
||||||
|
-#endif
|
||||||
|
Object obj;
|
||||||
|
Ref refa = ano->getRef();
|
||||||
|
|
||||||
|
@@ -467,11 +461,7 @@ bool SlaOutputDev::handleLinkAnnot(Annot* annota, double xCoor, double yCoor, do
|
||||||
|
if (dst->isPageRef())
|
||||||
|
{
|
||||||
|
Ref dstr = dst->getPageRef();
|
||||||
|
-#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 76, 0)
|
||||||
|
pagNum = pdfDoc->findPage(dstr);
|
||||||
|
-#else
|
||||||
|
- pagNum = pdfDoc->findPage(dstr.num, dstr.gen);
|
||||||
|
-#endif
|
||||||
|
}
|
||||||
|
else
|
||||||
|
pagNum = dst->getPageNum();
|
||||||
|
@@ -485,11 +475,7 @@ bool SlaOutputDev::handleLinkAnnot(Annot* annota, double xCoor, double yCoor, do
|
||||||
|
POPPLER_CONST GooString *ndst = gto->getNamedDest();
|
||||||
|
if (ndst)
|
||||||
|
{
|
||||||
|
-#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 86, 0)
|
||||||
|
std::unique_ptr<LinkDest> dstn = pdfDoc->findDest(ndst);
|
||||||
|
-#else
|
||||||
|
- LinkDest *dstn = pdfDoc->findDest(ndst);
|
||||||
|
-#endif
|
||||||
|
if (dstn)
|
||||||
|
{
|
||||||
|
if (dstn->getKind() == destXYZ)
|
||||||
|
@@ -497,11 +483,7 @@ bool SlaOutputDev::handleLinkAnnot(Annot* annota, double xCoor, double yCoor, do
|
||||||
|
if (dstn->isPageRef())
|
||||||
|
{
|
||||||
|
Ref dstr = dstn->getPageRef();
|
||||||
|
-#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 76, 0)
|
||||||
|
pagNum = pdfDoc->findPage(dstr);
|
||||||
|
-#else
|
||||||
|
- pagNum = pdfDoc->findPage(dstr.num, dstr.gen);
|
||||||
|
-#endif
|
||||||
|
}
|
||||||
|
else
|
||||||
|
pagNum = dstn->getPageNum();
|
||||||
|
@@ -533,11 +515,7 @@ bool SlaOutputDev::handleLinkAnnot(Annot* annota, double xCoor, double yCoor, do
|
||||||
|
POPPLER_CONST GooString *ndst = gto->getNamedDest();
|
||||||
|
if (ndst)
|
||||||
|
{
|
||||||
|
-#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 86, 0)
|
||||||
|
std::unique_ptr<LinkDest> dstn = pdfDoc->findDest(ndst);
|
||||||
|
-#else
|
||||||
|
- LinkDest *dstn = pdfDoc->findDest(ndst);
|
||||||
|
-#endif
|
||||||
|
if (dstn)
|
||||||
|
{
|
||||||
|
if (dstn->getKind() == destXYZ)
|
||||||
|
@@ -985,11 +963,7 @@ void SlaOutputDev::handleActions(PageItem* ite, AnnotWidget *ano)
|
||||||
|
if (dst->isPageRef())
|
||||||
|
{
|
||||||
|
Ref dstr = dst->getPageRef();
|
||||||
|
-#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 76, 0)
|
||||||
|
pagNum = pdfDoc->findPage(dstr);
|
||||||
|
-#else
|
||||||
|
- pagNum = pdfDoc->findPage(dstr.num, dstr.gen);
|
||||||
|
-#endif
|
||||||
|
}
|
||||||
|
else
|
||||||
|
pagNum = dst->getPageNum();
|
||||||
|
@@ -1005,11 +979,7 @@ void SlaOutputDev::handleActions(PageItem* ite, AnnotWidget *ano)
|
||||||
|
POPPLER_CONST GooString *ndst = gto->getNamedDest();
|
||||||
|
if (ndst)
|
||||||
|
{
|
||||||
|
-#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 86, 0)
|
||||||
|
std::unique_ptr<LinkDest> dstn = pdfDoc->findDest(ndst);
|
||||||
|
-#else
|
||||||
|
- LinkDest *dstn = pdfDoc->findDest(ndst);
|
||||||
|
-#endif
|
||||||
|
if (dstn)
|
||||||
|
{
|
||||||
|
if (dstn->getKind() == destXYZ)
|
||||||
|
@@ -1017,11 +987,7 @@ void SlaOutputDev::handleActions(PageItem* ite, AnnotWidget *ano)
|
||||||
|
if (dstn->isPageRef())
|
||||||
|
{
|
||||||
|
Ref dstr = dstn->getPageRef();
|
||||||
|
-#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 76, 0)
|
||||||
|
pagNum = pdfDoc->findPage(dstr);
|
||||||
|
-#else
|
||||||
|
- pagNum = pdfDoc->findPage(dstr.num, dstr.gen);
|
||||||
|
-#endif
|
||||||
|
}
|
||||||
|
else
|
||||||
|
pagNum = dstn->getPageNum();
|
||||||
|
@@ -1061,11 +1027,7 @@ void SlaOutputDev::handleActions(PageItem* ite, AnnotWidget *ano)
|
||||||
|
POPPLER_CONST GooString *ndst = gto->getNamedDest();
|
||||||
|
if (ndst)
|
||||||
|
{
|
||||||
|
-#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 86, 0)
|
||||||
|
std::unique_ptr<LinkDest> dstn = pdfDoc->findDest(ndst);
|
||||||
|
-#else
|
||||||
|
- LinkDest *dstn = pdfDoc->findDest(ndst);
|
||||||
|
-#endif
|
||||||
|
if (dstn)
|
||||||
|
{
|
||||||
|
if (dstn->getKind() == destXYZ)
|
||||||
|
@@ -1139,143 +1101,91 @@ void SlaOutputDev::handleActions(PageItem* ite, AnnotWidget *ano)
|
||||||
|
{
|
||||||
|
if (Aact->getKind() == actionJavaScript)
|
||||||
|
{
|
||||||
|
-#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 86, 0)
|
||||||
|
LinkJavaScript *jsa = (LinkJavaScript*) Aact.get();
|
||||||
|
-#else
|
||||||
|
- LinkJavaScript *jsa = (LinkJavaScript*) Aact;
|
||||||
|
-#endif
|
||||||
|
if (jsa->isOk())
|
||||||
|
{
|
||||||
|
ite->annotation().setD_act(UnicodeParsedString(jsa->getScript()));
|
||||||
|
ite->annotation().setAAact(true);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
-#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 86, 0)
|
||||||
|
Aact.reset();
|
||||||
|
-#else
|
||||||
|
- Aact = nullptr;
|
||||||
|
-#endif
|
||||||
|
}
|
||||||
|
Aact = SC_getAdditionalAction("E", ano);
|
||||||
|
if (Aact)
|
||||||
|
{
|
||||||
|
if (Aact->getKind() == actionJavaScript)
|
||||||
|
{
|
||||||
|
-#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 86, 0)
|
||||||
|
LinkJavaScript *jsa = (LinkJavaScript*) Aact.get();
|
||||||
|
-#else
|
||||||
|
- LinkJavaScript *jsa = (LinkJavaScript*) Aact;
|
||||||
|
-#endif
|
||||||
|
if (jsa->isOk())
|
||||||
|
{
|
||||||
|
ite->annotation().setE_act(UnicodeParsedString(jsa->getScript()));
|
||||||
|
ite->annotation().setAAact(true);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
-#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 86, 0)
|
||||||
|
Aact.reset();
|
||||||
|
-#else
|
||||||
|
- Aact = nullptr;
|
||||||
|
-#endif
|
||||||
|
}
|
||||||
|
Aact = SC_getAdditionalAction("X", ano);
|
||||||
|
if (Aact)
|
||||||
|
{
|
||||||
|
if (Aact->getKind() == actionJavaScript)
|
||||||
|
{
|
||||||
|
-#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 86, 0)
|
||||||
|
LinkJavaScript *jsa = (LinkJavaScript*) Aact.get();
|
||||||
|
-#else
|
||||||
|
- LinkJavaScript *jsa = (LinkJavaScript*) Aact;
|
||||||
|
-#endif
|
||||||
|
if (jsa->isOk())
|
||||||
|
{
|
||||||
|
ite->annotation().setX_act(UnicodeParsedString(jsa->getScript()));
|
||||||
|
ite->annotation().setAAact(true);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
-#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 86, 0)
|
||||||
|
Aact.reset();
|
||||||
|
-#else
|
||||||
|
- Aact = nullptr;
|
||||||
|
-#endif
|
||||||
|
}
|
||||||
|
Aact = SC_getAdditionalAction("Fo", ano);
|
||||||
|
if (Aact)
|
||||||
|
{
|
||||||
|
if (Aact->getKind() == actionJavaScript)
|
||||||
|
{
|
||||||
|
-#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 86, 0)
|
||||||
|
LinkJavaScript *jsa = (LinkJavaScript*) Aact.get();
|
||||||
|
-#else
|
||||||
|
- LinkJavaScript *jsa = (LinkJavaScript*) Aact;
|
||||||
|
-#endif
|
||||||
|
if (jsa->isOk())
|
||||||
|
{
|
||||||
|
ite->annotation().setFo_act(UnicodeParsedString(jsa->getScript()));
|
||||||
|
ite->annotation().setAAact(true);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
-#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 86, 0)
|
||||||
|
Aact.reset();
|
||||||
|
-#else
|
||||||
|
- Aact = nullptr;
|
||||||
|
-#endif
|
||||||
|
}
|
||||||
|
Aact = SC_getAdditionalAction("Bl", ano);
|
||||||
|
if (Aact)
|
||||||
|
{
|
||||||
|
if (Aact->getKind() == actionJavaScript)
|
||||||
|
{
|
||||||
|
-#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 86, 0)
|
||||||
|
LinkJavaScript *jsa = (LinkJavaScript*) Aact.get();
|
||||||
|
-#else
|
||||||
|
- LinkJavaScript *jsa = (LinkJavaScript*) Aact;
|
||||||
|
-#endif
|
||||||
|
if (jsa->isOk())
|
||||||
|
{
|
||||||
|
ite->annotation().setBl_act(UnicodeParsedString(jsa->getScript()));
|
||||||
|
ite->annotation().setAAact(true);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
-#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 86, 0)
|
||||||
|
Aact.reset();
|
||||||
|
-#else
|
||||||
|
- Aact = nullptr;
|
||||||
|
-#endif
|
||||||
|
}
|
||||||
|
Aact = SC_getAdditionalAction("C", ano);
|
||||||
|
if (Aact)
|
||||||
|
{
|
||||||
|
if (Aact->getKind() == actionJavaScript)
|
||||||
|
{
|
||||||
|
-#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 86, 0)
|
||||||
|
LinkJavaScript *jsa = (LinkJavaScript*) Aact.get();
|
||||||
|
-#else
|
||||||
|
- LinkJavaScript *jsa = (LinkJavaScript*) Aact;
|
||||||
|
-#endif
|
||||||
|
if (jsa->isOk())
|
||||||
|
{
|
||||||
|
ite->annotation().setC_act(UnicodeParsedString(jsa->getScript()));
|
||||||
|
ite->annotation().setAAact(true);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
-#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 86, 0)
|
||||||
|
Aact.reset();
|
||||||
|
-#else
|
||||||
|
- Aact = nullptr;
|
||||||
|
-#endif
|
||||||
|
}
|
||||||
|
Aact = SC_getAdditionalAction("F", ano);
|
||||||
|
if (Aact)
|
||||||
|
{
|
||||||
|
if (Aact->getKind() == actionJavaScript)
|
||||||
|
{
|
||||||
|
-#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 86, 0)
|
||||||
|
LinkJavaScript *jsa = (LinkJavaScript*) Aact.get();
|
||||||
|
-#else
|
||||||
|
- LinkJavaScript *jsa = (LinkJavaScript*) Aact;
|
||||||
|
-#endif
|
||||||
|
if (jsa->isOk())
|
||||||
|
{
|
||||||
|
ite->annotation().setF_act(UnicodeParsedString(jsa->getScript()));
|
||||||
|
@@ -1283,22 +1193,14 @@ void SlaOutputDev::handleActions(PageItem* ite, AnnotWidget *ano)
|
||||||
|
ite->annotation().setFormat(5);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
-#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 86, 0)
|
||||||
|
Aact.reset();
|
||||||
|
-#else
|
||||||
|
- Aact = nullptr;
|
||||||
|
-#endif
|
||||||
|
}
|
||||||
|
Aact = SC_getAdditionalAction("K", ano);
|
||||||
|
if (Aact)
|
||||||
|
{
|
||||||
|
if (Aact->getKind() == actionJavaScript)
|
||||||
|
{
|
||||||
|
-#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 86, 0)
|
||||||
|
LinkJavaScript *jsa = (LinkJavaScript*) Aact.get();
|
||||||
|
-#else
|
||||||
|
- LinkJavaScript *jsa = (LinkJavaScript*) Aact;
|
||||||
|
-#endif
|
||||||
|
if (jsa->isOk())
|
||||||
|
{
|
||||||
|
ite->annotation().setK_act(UnicodeParsedString(jsa->getScript()));
|
||||||
|
@@ -1306,33 +1208,21 @@ void SlaOutputDev::handleActions(PageItem* ite, AnnotWidget *ano)
|
||||||
|
ite->annotation().setFormat(5);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
-#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 86, 0)
|
||||||
|
Aact.reset();
|
||||||
|
-#else
|
||||||
|
- Aact = nullptr;
|
||||||
|
-#endif
|
||||||
|
}
|
||||||
|
Aact = SC_getAdditionalAction("V", ano);
|
||||||
|
if (Aact)
|
||||||
|
{
|
||||||
|
if (Aact->getKind() == actionJavaScript)
|
||||||
|
{
|
||||||
|
-#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 86, 0)
|
||||||
|
LinkJavaScript *jsa = (LinkJavaScript*) Aact.get();
|
||||||
|
-#else
|
||||||
|
- LinkJavaScript *jsa = (LinkJavaScript*) Aact;
|
||||||
|
-#endif
|
||||||
|
if (jsa->isOk())
|
||||||
|
{
|
||||||
|
ite->annotation().setV_act(UnicodeParsedString(jsa->getScript()));
|
||||||
|
ite->annotation().setAAact(true);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
-#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 86, 0)
|
||||||
|
Aact.reset();
|
||||||
|
-#else
|
||||||
|
- Aact = nullptr;
|
||||||
|
-#endif
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@@ -1342,11 +1232,7 @@ void SlaOutputDev::startDoc(PDFDoc *doc, XRef *xrefA, Catalog *catA)
|
||||||
|
catalog = catA;
|
||||||
|
pdfDoc = doc;
|
||||||
|
updateGUICounter = 0;
|
||||||
|
-#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 84, 0)
|
||||||
|
m_fontEngine = new SplashFontEngine(true, false, false, true);
|
||||||
|
-#else
|
||||||
|
- m_fontEngine = new SplashFontEngine(globalParams->getEnableFreeType(), false, false, true);
|
||||||
|
-#endif
|
||||||
|
}
|
||||||
|
|
||||||
|
void SlaOutputDev::startPage(int pageNum, GfxState *, XRef *)
|
||||||
|
diff --git a/scribus/plugins/import/pdf/slaoutput.h b/scribus/plugins/import/pdf/slaoutput.h
|
||||||
|
index 02e538253..601e28745 100644
|
||||||
|
--- a/scribus/plugins/import/pdf/slaoutput.h
|
||||||
|
+++ b/scribus/plugins/import/pdf/slaoutput.h
|
||||||
|
@@ -30,9 +30,6 @@ for which a new license (GPL+exception) is in place.
|
||||||
|
#include "selection.h"
|
||||||
|
#include "vgradient.h"
|
||||||
|
|
||||||
|
-#if POPPLER_ENCODED_VERSION < POPPLER_VERSION_ENCODE(0, 73, 0)
|
||||||
|
-#include <poppler/goo/gtypes.h>
|
||||||
|
-#endif
|
||||||
|
#include <poppler/Object.h>
|
||||||
|
#include <poppler/OutputDev.h>
|
||||||
|
#include <poppler/Gfx.h>
|
||||||
|
@@ -163,11 +160,7 @@ public:
|
||||||
|
virtual ~SlaOutputDev();
|
||||||
|
|
||||||
|
LinkAction* SC_getAction(AnnotWidget *ano);
|
||||||
|
-#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 86, 0)
|
||||||
|
std::unique_ptr<LinkAction> SC_getAdditionalAction(const char *key, AnnotWidget *ano);
|
||||||
|
-#else
|
||||||
|
- LinkAction* SC_getAdditionalAction(const char *key, AnnotWidget *ano);
|
||||||
|
-#endif
|
||||||
|
static GBool annotations_callback(Annot *annota, void *user_data);
|
||||||
|
bool handleTextAnnot(Annot* annota, double xCoor, double yCoor, double width, double height);
|
||||||
|
bool handleLinkAnnot(Annot* annota, double xCoor, double yCoor, double width, double height);
|
||||||
|
--
|
||||||
|
2.35.1
|
||||||
|
|
31
0001-Small-update-vs-latest-code-in-poppler.patch
Normal file
31
0001-Small-update-vs-latest-code-in-poppler.patch
Normal file
@ -0,0 +1,31 @@
|
|||||||
|
From 0ac8654a468b077fd1c736f4c6245435efd70d13 Mon Sep 17 00:00:00 2001
|
||||||
|
From: jghali <jghali@11d20701-8431-0410-a711-e3c959e3b870>
|
||||||
|
Date: Thu, 3 Feb 2022 19:46:13 +0000
|
||||||
|
Subject: [PATCH] Small update vs latest code in poppler
|
||||||
|
|
||||||
|
git-svn-id: svn://scribus.net/trunk/Scribus@24885 11d20701-8431-0410-a711-e3c959e3b870
|
||||||
|
---
|
||||||
|
scribus/plugins/import/pdf/slaoutput.cpp | 6 +++---
|
||||||
|
1 file changed, 3 insertions(+), 3 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/scribus/plugins/import/pdf/slaoutput.cpp b/scribus/plugins/import/pdf/slaoutput.cpp
|
||||||
|
index 3650c96f5..a6f4e00fa 100644
|
||||||
|
--- a/scribus/plugins/import/pdf/slaoutput.cpp
|
||||||
|
+++ b/scribus/plugins/import/pdf/slaoutput.cpp
|
||||||
|
@@ -3072,10 +3072,10 @@ void SlaOutputDev::updateFont(GfxState *state)
|
||||||
|
delete id;
|
||||||
|
else
|
||||||
|
{
|
||||||
|
- if (!(fontLoc = gfxFont->locateFont(xref, nullptr)))
|
||||||
|
+ fontLoc = gfxFont->locateFont((xref) ? xref : pdfDoc->getXRef(), nullptr);
|
||||||
|
+ if (!fontLoc)
|
||||||
|
{
|
||||||
|
- error(errSyntaxError, -1, "Couldn't find a font for '{0:s}'",
|
||||||
|
- gfxFont->getName() ? gfxFont->getName()->getCString() : "(unnamed)");
|
||||||
|
+ error(errSyntaxError, -1, "Couldn't find a font for '{0:s}'", gfxFont->getName() ? gfxFont->getName()->getCString() : "(unnamed)");
|
||||||
|
goto err2;
|
||||||
|
}
|
||||||
|
|
||||||
|
--
|
||||||
|
2.35.1
|
||||||
|
|
@ -1,3 +1,13 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Mar 4 08:40:27 UTC 2022 - Christophe Giboudeaux <christophe@krop.fr>
|
||||||
|
|
||||||
|
- Add upstream changes:
|
||||||
|
* 0001-16734-Build-break-with-poppler-22.2.0.patch
|
||||||
|
* 0001-Small-update-vs-latest-code-in-poppler.patch
|
||||||
|
* 0001-16764-Build-break-with-poppler-22.03.0.patch
|
||||||
|
* 0001-Enforce-poppler-version-0.86.0.patch
|
||||||
|
* 0001-16764-Better-patch-avoid-a-memory-leak.patch
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Mon Jan 24 12:49:07 UTC 2022 - Paolo Stivanin <info@paolostivanin.com>
|
Mon Jan 24 12:49:07 UTC 2022 - Paolo Stivanin <info@paolostivanin.com>
|
||||||
|
|
||||||
|
10
scribus.spec
10
scribus.spec
@ -29,6 +29,16 @@ Source0: %{name}-%{version}.tar.xz
|
|||||||
Source1: %{name}-%{version}.tar.xz.asc
|
Source1: %{name}-%{version}.tar.xz.asc
|
||||||
# PATCH-FIX-OPENSUSE
|
# PATCH-FIX-OPENSUSE
|
||||||
Patch0: 0001-Make-sure-information-displayed-on-the-about-window-.patch
|
Patch0: 0001-Make-sure-information-displayed-on-the-about-window-.patch
|
||||||
|
# PATCH-FIX-UPSTREAM
|
||||||
|
Patch1: 0001-16734-Build-break-with-poppler-22.2.0.patch
|
||||||
|
# PATCH-FIX-UPSTREAM
|
||||||
|
Patch2: 0001-Small-update-vs-latest-code-in-poppler.patch
|
||||||
|
# PATCH-FIX-UPSTREAM
|
||||||
|
Patch3: 0001-16764-Build-break-with-poppler-22.03.0.patch
|
||||||
|
# PATCH-FIX-UPSTREAM
|
||||||
|
Patch4: 0001-Enforce-poppler-version-0.86.0.patch
|
||||||
|
# PATCH-FIX-UPSTREAM
|
||||||
|
Patch5: 0001-16764-Better-patch-avoid-a-memory-leak.patch
|
||||||
BuildRequires: cmake >= 3.14.0
|
BuildRequires: cmake >= 3.14.0
|
||||||
BuildRequires: cups-devel
|
BuildRequires: cups-devel
|
||||||
BuildRequires: dos2unix
|
BuildRequires: dos2unix
|
||||||
|
Loading…
Reference in New Issue
Block a user