Qoppa’s 100% Java PDF optimizer library, jPDFOptimizer, allows to optimize the content of a PDF document.
Here are some advanced optimization options to reduce the size of a PDF document.
OptSettings options = new OptSettings();
// Other optimizing options
options.setFlattenComments(true);
options.setFlattenFields(true);
options.setClearSignatures(true);
options.setFlateUncompressedStreams(true);
options.setMergeDuplicateFonts(true);
options.setMergeDuplicateImages(true);
Method | Description |
Flatten CommentsOptSettings.setFlattenComments() |
Flattens all annotations including text boxes, shapes, highlights, and stamps directly onto the document so that they can no longer be edited. Annotations such as the sticky note will have comments removed but the image will still be placed on the document |
Flatten FieldsOptSettings.setFlattenFields() |
Flattens all fields including text boxes, check boxes, radio buttons, combo boxes, list boxes, buttons, & signature fields directly onto the document so that they can no longer be edited. All values within the fields will be flattened as well |
Merge Duplicate ImagesOptSettings.setMergeDuplicateImages() |
Merges any duplicate images within the PDF so that all objects are referencing the same image resource rather then multiple of the same resource |
Merge Duplicate FontsOptSettings.setMergeDuplicateFonts() |
Merges any duplicate fonts within the PDF so that all objects are referencing the same font resource rather then multiple of the same resource |
Compress Uncompressed StreamsOptSettings.setFlateUncompressedStreams() |
Compresses any additional PDF elements within the document such as page descriptions that have not been optimized by any other process to further reduce file size |
Clear SignaturesOptSettings.setClearSignatures() |
Removes all signatures that are on the PDF Document but will leave the signature field |