summaryrefslogtreecommitdiff
path: root/sdext/source
diff options
context:
space:
mode:
authorAshod Nakashian <ashod.nakashian@collabora.co.uk>2018-03-03 13:10:49 -0500
committerAshod Nakashian <ashnakash@gmail.com>2018-03-21 01:57:28 +0100
commitac6e6753bd3b94df1780b011efae829964262587 (patch)
tree4290c00d5b335ff4f393761c9261172d4ff4fb2c /sdext/source
parent3b3e203461441da733096be323641a8dc07ff24f (diff)
pdf: refactor poppler importer
This paves the way to add pdf parsing via pdfium. Change-Id: I384687bcdce3011682ebeec18ee3de44759feb1a Reviewed-on: https://gerrit.libreoffice.org/51254 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Ashod Nakashian <ashnakash@gmail.com>
Diffstat (limited to 'sdext/source')
-rw-r--r--sdext/source/pdfimport/wrapper/wrapper.cxx21
1 files changed, 21 insertions, 0 deletions
diff --git a/sdext/source/pdfimport/wrapper/wrapper.cxx b/sdext/source/pdfimport/wrapper/wrapper.cxx
index d79ffc3c99fb..7d3d68901e37 100644
--- a/sdext/source/pdfimport/wrapper/wrapper.cxx
+++ b/sdext/source/pdfimport/wrapper/wrapper.cxx
@@ -1001,6 +1001,14 @@ public:
}
};
+bool xpdf_ImportFromFile_Poppler(const OUString& aSysUPath,
+ const ContentSinkSharedPtr& rSink,
+ const uno::Reference<task::XInteractionHandler>& xIHdl,
+ const bool bIsEncrypted,
+ const OUString& aPwd,
+ const uno::Reference<uno::XComponentContext>& xContext,
+ const OUString& rFilterOptions);
+
bool xpdf_ImportFromFile( const OUString& rURL,
const ContentSinkSharedPtr& rSink,
const uno::Reference< task::XInteractionHandler >& xIHdl,
@@ -1031,6 +1039,19 @@ bool xpdf_ImportFromFile( const OUString& rURL,
return false;
}
+ return xpdf_ImportFromFile_Poppler(aSysUPath, rSink, xIHdl, bIsEncrypted, aPwd, xContext, rFilterOptions);
+}
+
+/// Parse PDf file using libpoppler, which is quite limited
+/// to be phased out in favor of pdfium.
+bool xpdf_ImportFromFile_Poppler(const OUString& aSysUPath,
+ const ContentSinkSharedPtr& rSink,
+ const uno::Reference<task::XInteractionHandler>& /*xIHdl*/,
+ const bool bIsEncrypted,
+ const OUString& aPwd,
+ const uno::Reference<uno::XComponentContext>& xContext,
+ const OUString& rFilterOptions)
+{
// Determine xpdfimport executable URL:
OUString converterURL("$BRAND_BASE_DIR/" LIBO_BIN_FOLDER "/xpdfimport");
rtl::Bootstrap::expandMacros(converterURL); //TODO: detect failure