diff options
author | Mihai <mihai.varga@collabora.com> | 2015-02-13 12:56:11 +0200 |
---|---|---|
committer | Caolán McNamara <caolanm@redhat.com> | 2015-02-17 13:31:29 +0000 |
commit | 98b27ea907517d585f5d951895ae733653a442d2 (patch) | |
tree | 34972139f7f63cbd51a7b917e4a9dc0d77a5c89c /sdext/source/pdfimport/xpdfwrapper/wrapper_gpl.cxx | |
parent | 61e9e6d08f79a5b75674b94bccc05880256671e8 (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.cxx | 17 |
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; |