diff options
Diffstat (limited to 'qpdf/qpdf.cc')
-rw-r--r-- | qpdf/qpdf.cc | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/qpdf/qpdf.cc b/qpdf/qpdf.cc index 3d80abac..495816c3 100644 --- a/qpdf/qpdf.cc +++ b/qpdf/qpdf.cc @@ -164,6 +164,7 @@ struct Options optimize_images(false), externalize_inline_images(false), keep_inline_images(false), + remove_page_labels(false), oi_min_width(128), // Default values for these oi_min_height(128), // oi flags are in --help oi_min_area(16384), // and in the manual. @@ -261,6 +262,7 @@ struct Options bool optimize_images; bool externalize_inline_images; bool keep_inline_images; + bool remove_page_labels; size_t oi_min_width; size_t oi_min_height; size_t oi_min_area; @@ -670,6 +672,7 @@ class ArgParser void argOptimizeImages(); void argExternalizeInlineImages(); void argKeepInlineImages(); + void argRemovePageLabels(); void argOiMinWidth(char* parameter); void argOiMinHeight(char* parameter); void argOiMinArea(char* parameter); @@ -911,6 +914,7 @@ ArgParser::initOptionTable() (*t)["externalize-inline-images"] = oe_bare(&ArgParser::argExternalizeInlineImages); (*t)["keep-inline-images"] = oe_bare(&ArgParser::argKeepInlineImages); + (*t)["remove-page-labels"] = oe_bare(&ArgParser::argRemovePageLabels); (*t)["oi-min-width"] = oe_requiredParameter( &ArgParser::argOiMinWidth, "minimum-width"); (*t)["oi-min-height"] = oe_requiredParameter( @@ -1335,6 +1339,7 @@ ArgParser::argHelp() << "--ii-min-bytes=bytes specify minimum size of inline images to be\n" << " converted to regular images\n" << "--keep-inline-images exclude inline images from image optimization\n" + << "--remove-page-labels remove any page labels present in the output file\n" << "--qdf turns on \"QDF mode\" (below)\n" << "--linearize-pass1=file write intermediate pass of linearized file\n" << " for debugging\n" @@ -2013,6 +2018,12 @@ ArgParser::argKeepInlineImages() } void +ArgParser::argRemovePageLabels() +{ + o.remove_page_labels = true; +} + +void ArgParser::argOiMinWidth(char* parameter) { o.oi_min_width = QUtil::string_to_int(parameter); @@ -4335,6 +4346,10 @@ static void handle_transformations(QPDF& pdf, Options& o) (*iter).coalesceContentStreams(); } } + if (o.remove_page_labels) + { + pdf.getRoot().removeKey("/PageLabels"); + } } static void handle_page_specs(QPDF& pdf, Options& o) |