summaryrefslogtreecommitdiff
path: root/sdext/source/pdfimport/xpdfwrapper/wrapper_gpl.cxx
diff options
context:
space:
mode:
authorMihai <mihai.varga@collabora.com>2015-02-13 12:56:11 +0200
committerCaolán McNamara <caolanm@redhat.com>2015-02-17 13:31:29 +0000
commit98b27ea907517d585f5d951895ae733653a442d2 (patch)
tree34972139f7f63cbd51a7b917e4a9dc0d77a5c89c /sdext/source/pdfimport/xpdfwrapper/wrapper_gpl.cxx
parent61e9e6d08f79a5b75674b94bccc05880256671e8 (diff)
SkipImages option for PDF import
This option allows images and drawings to be skipped while importing a PDF, the main reason was performance improvement where images were not needed. Change-Id: Ibca342ff6e7005bedf7b16869473832ce2576fb2 Reviewed-on: https://gerrit.libreoffice.org/14470 Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
Diffstat (limited to 'sdext/source/pdfimport/xpdfwrapper/wrapper_gpl.cxx')
-rw-r--r--sdext/source/pdfimport/xpdfwrapper/wrapper_gpl.cxx17
1 files changed, 13 insertions, 4 deletions
diff --git a/sdext/source/pdfimport/xpdfwrapper/wrapper_gpl.cxx b/sdext/source/pdfimport/xpdfwrapper/wrapper_gpl.cxx
index 20c45c49a1dd..c72ba95d5f60 100644
--- a/sdext/source/pdfimport/xpdfwrapper/wrapper_gpl.cxx
+++ b/sdext/source/pdfimport/xpdfwrapper/wrapper_gpl.cxx
@@ -27,7 +27,8 @@ FILE* g_binary_out=stderr;
static const char *ownerPassword = "\001";
static const char *userPassword = "\001";
-static const char *outputFile = "\001";
+static const char *outputFile = "\001";
+static const char *options = "\001";
int main(int argc, char **argv)
{
@@ -41,6 +42,14 @@ int main(int argc, char **argv)
for (int j = k; j < argc; ++j)
argv[j] = argv[j+2];
}
+ else if (!strcmp(argv[k], "-o"))
+ {
+ options = argv[k+1];
+ argc -= 2;
+ for (int j = k; j < argc; ++j)
+ argv[j] = argv[j+2];
+ }
+
else if (!strcmp(argv[k], "-opw"))
{
ownerPassword = argv[k+1];
@@ -58,9 +67,6 @@ int main(int argc, char **argv)
++k;
}
- if( argc != 3 )
- return 1;
-
// read config file
globalParams = new GlobalParams();
globalParams->setErrQuiet(gTrue);
@@ -119,6 +125,9 @@ int main(int argc, char **argv)
PDFDoc &rDoc = aDoc.isOk()? aDoc: aErrDoc;
pdfi::PDFOutDev aOutDev(&rDoc);
+ if (!strcmp(options, "SkipImages")) {
+ aOutDev.setSkipImages(true);
+ }
// tell the receiver early - needed for proper progress calculation
const int nPages = rDoc.isOk()? rDoc.getNumPages(): 0;