Created Date: 13 Dec, 2022 13:34
Last Modifed Date: 13 Dec, 2022 13:34

This is another variation on the theme of page-level editing. MakoSweeper 'sweeps away' (removes) any pages that are not included in the supplied pages range(s).

Mako Sweeper v1.2.0

   makosweeper [output.yyy] [parameter=setting] [parameter=setting] ..

Where:          source file from which to extract pages, where xxx is pdf, oxps, xps, pxl (PCL/XL) or pcl (PCL5).
   output.yyy         target file to write the output to, where yyy is pdf, oxps, xps, pxl or pcl.
                        If no output file is declared, <input>_swept.pdf is assumed.
   parameter=setting  one or more settings, described below.

   pw=<password>      PDF password, if required to open the file.
   p=<page range>     Multiple page ranges separated by a comma, eg 1-10,5-30,92,600-720,40-50
                      -- Do not include spaces
   q=yes|no           PDF only: Use incremental output when writing PDF (yes)
                      -- Default: no
   f=yes|no           Create a folder to contain the output, named according to the output file name (yes)
                      -- Default: no

How it works

A vector of flags, one per page, are all set to true, meaning the page will be removed. The page range(s) are then processed, and each page falling within the those ranges is set to false. Finally, a loop traverses the pages, in reverse order, removing each page from the document that is flagged as true.

Useful sample code

  • Simple processing of a document - open an assembly, fetch the document, remove some pages from it, rewrite assembly.