15 #ifndef FS_PDFOPTIMIZATION_H_ 16 #define FS_PDFOPTIMIZATION_H_ 35 namespace optimization {
355 typedef enum _ImageCompressMode {
373 typedef enum _ImageCompressQuality {
393 typedef enum _StretchMode {
611 typedef enum _MonoImageCompressMode {
633 typedef enum _MonoImageCompressQuality {
655 typedef enum _StretchMode {
903 typedef enum _OptimizerOptions {
921 typedef enum _CleanUpOptions {
941 typedef enum _DiscardObjectsOptions {
982 typedef enum _DiscardUserDataOptions {
1226 typedef enum _ScannedImageCompressMode {
1242 typedef enum _ScannedMonoImageCompressMode {
Compression mode: zip.
Definition: fs_optimization.h:625
Compression mode: CCITT Group 4.
Definition: fs_optimization.h:615
void SetColorImageSettings(const ImageSettings &settings)
Set optimization related settings for color image.
Compression quality: Low.
Definition: fs_optimization.h:377
bool IsEmpty() const
Check whether current object is empty or not.
ScannedMonoImageCompressMode
Enumeration for compression mode used for monochrome image.
Definition: fs_optimization.h:1242
Compression quality: Medium, only for e_ImageCompressHigh compress mode.
Definition: fs_optimization.h:643
MonoImageCompressMode
Enumeration for compression mode used for monochrome image.
Definition: fs_optimization.h:611
Definition: fs_common.h:1348
Compression quality: High, only for e_ImageCompressHigh compress mode.
Definition: fs_optimization.h:645
Definition: fs_image.h:36
Discard unreferenced named destination.
Definition: fs_optimization.h:931
void SetCompressionMode(MonoImageCompressMode mode)
Set compression mode used for optimizing monochrome images in a PDF document.
Compression mode: zip.
Definition: fs_optimization.h:365
void SetColorGrayImageCompressionMode(ScannedImageCompressMode mode)
Set compression mode used for optimizing color/gray images in the scanned PDF document.
CFX_Object Object
Object type.
Definition: fs_basictypes.h:221
When this is set, that means not to do any interpolation for stretching.
Definition: fs_optimization.h:405
Use Flate to encode streams that are not encoded.
Definition: fs_optimization.h:923
Optimize PDF document by discarding user data.
Definition: fs_optimization.h:913
Compression mode: jpeg2000 lossy.
Definition: fs_optimization.h:1234
Header file for PDF document related definitions and classes.
void SetSubsetAllEmFonts(bool bSubsetAllEmFonts)
Sets whether to include subsets of all unembedded fonts.
uint32 acroforms
Total size of AcroForm data in bytes.
Definition: fs_optimization.h:143
void SetOptimizedPages(const common::Range &pages)
Set the pages which will be optimized.
Compression mode: jpeg2000 lossless.
Definition: fs_optimization.h:1232
Compression mode: CCITT Group 3.
Definition: fs_optimization.h:613
Definition: fs_basictypes.h:228
void SetStretchMode(StretchMode mode)
Set stretch mode used for optimizing monochrome images in a PDF document.
Discard embedded print settings.
Definition: fs_optimization.h:955
Discard hidden layer content and flatten visible layers.
Definition: fs_optimization.h:994
Compression mode: jbig2 lossy.
Definition: fs_optimization.h:1244
Discard file attachments.
Definition: fs_optimization.h:990
uint32 color_space
Total size of color space definitions in bytes.
Definition: fs_optimization.h:164
void SetUnembeddedFontSettings(const UnembeddedFontSettings &settings)
Set optimization related settings for unembedding fonts.
Detect and merge image fragments.
Definition: fs_optimization.h:972
static common::Progressive Optimize(const pdf::PDFDoc &doc, const OptimizerSettings &settings, common::PauseCallback *pause)
Optimize the given PDF document with specified optimizer settings.
AuditSpaceSize & operator=(const AuditSpaceSize &data)
Assign operator.
Definition: fs_optimization.h:73
uint32 embed_files
Total size of embedded file streams in bytes.
Definition: fs_optimization.h:220
uint32 bookmarks
Total size of bookmarks data in bytes.
Definition: fs_optimization.h:122
uint32 extend_graphics_states
Total size of extended graphics states in bytes.
Definition: fs_optimization.h:199
bool operator==(const MonoImageSettings &other) const
Equal operator.
Discard all form submission, import and reset actions.
Definition: fs_optimization.h:943
Compression quality: Lossless.
Definition: fs_optimization.h:635
uint32 images
Total size of embedded images in bytes.
Definition: fs_optimization.h:108
OptimizerSettings & operator=(const OptimizerSettings &other)
Assign operator.
Definition: fs_optimization.h:265
bool operator!=(const UnembeddedFontSettings &other) const
Not equal operator.
~OptimizeScannedPDFSettings()
Destructor.
uint32 comments_and_3d_contents
Total size of comments and 3D contents in bytes.
Definition: fs_optimization.h:185
void SetDiscardObjectsOptions(foxit::uint32 discard_objects_options)
Set optimization related options for discarding objects.
bool operator==(const OptimizerSettings &other) const
Equal operator.
When this is set, that means to do default stretching.
Definition: fs_optimization.h:395
UnembeddedFontSettings()
Constructor.
When this is set, that means not to do halftone for shrinking or rotating.
Definition: fs_optimization.h:663
When this is set, that means to do interpolation for zooming.
Definition: fs_optimization.h:399
Definition: fs_pdfdoc.h:772
DiscardUserDataOptions
Enumeration for discarding user data options.
Definition: fs_optimization.h:982
Definition: fs_optimization.h:348
Definition: fs_optimization.h:1219
Compression mode: high.
Definition: fs_optimization.h:617
Definition: fs_optimization.h:234
Compression mode: high.
Definition: fs_optimization.h:1250
MonoImageSettings()
Constructor.
Compression mode: jpeg2000.
Definition: fs_optimization.h:361
Discard all JavaScript actions.
Definition: fs_optimization.h:951
bool operator==(const ImageSettings &other) const
Equal operator.
~UnembeddedFontSettings()
Destructor.
Flatten form fields.
Definition: fs_optimization.h:945
discard tag user data
Definition: fs_optimization.h:996
void SetColorGrayImageSettings(const ImageSettings &settings)
Set optimization related settings for color/gray image.
void SetDiscardUserDataOptions(foxit::uint32 discard_userdata_options)
Set optimization related options for discarding user data.
When this is set, that means to do bicubic interpolation for zooming.
Definition: fs_optimization.h:665
void SetImageDPILimit(int dpi_limit)
Set the lower limit DPI value for the monochrome image to decide if the image is to be compressed in ...
Optimize PDF document by unembedding some embedded fonts.
Definition: fs_optimization.h:911
uint32 piece_infos
Total size of piece information in bytes.
Definition: fs_optimization.h:178
bool IsEmpty() const
Check whether current object is empty or not.
Discard external cross references.
Definition: fs_optimization.h:986
When this is set, that means to do bicubic interpolation for zooming.
Definition: fs_optimization.h:403
When this is set, that means to do interpolation for zooming.
Definition: fs_optimization.h:661
Compression quality: Lossless, only for jpeg2000 compress mode.
Definition: fs_optimization.h:385
void SetStretchMode(StretchMode mode)
Set stretch mode used for optimizing color/gray images in a PDF document.
~OptimizerSettings()
Destructor.
bool IsEmpty() const
Check whether current object is empty or not.
uint32 x_object_forms
Total size of XObject Forms in bytes.
Definition: fs_optimization.h:129
Compression mode: retain, which means no compression.
Definition: fs_optimization.h:363
Cleanup page content Change 0A,0D in the content stream to Spaces.
Definition: fs_optimization.h:933
void SetImageDPILimit(int dpi_limit)
Set the lower limit DPI value for the color/gray image to decide if the image is to be compressed in ...
Discard all annotations, forms and multimedia.
Definition: fs_optimization.h:984
DiscardObjectsOptions
Enumeration for discarding objects options.
Definition: fs_optimization.h:941
Definition: fs_optimization.h:808
ImageSettings()
Constructor.
Discard embedded page thumbnails.
Definition: fs_optimization.h:953
File stream interface, reading & writing.
Definition: fx_stream.h:692
void SetForegroundDownScale(int32 down_scale)
Set the foreground downscale value for lossy compression modes, used for optimizing color images in a...
Compression quality: Minimum.
Definition: fs_optimization.h:375
Compression quality: Minimum, only for e_ImageCompressHigh compress mode.
Definition: fs_optimization.h:639
bool operator !=(const ImageSettings &other) const
Not equal operator.
OptimizeScannedPDFSettings & operator=(const OptimizeScannedPDFSettings &other)
Assign operator.
void SetColorGrayImageCompressionQuality(foxit::uint32 quality)
Set the quality for lossy compression modes, used for optimizing color/gray images in a scanned PDF d...
bool operator==(const UnembeddedFontSettings &other) const
Equal operator.
void SetMonoImageCompressionMode(ScannedMonoImageCompressMode mode)
Set compression mode used for optimizing monochrome images in a scanned PDF document.
Optimize PDF document by compressing images.
Definition: fs_optimization.h:905
Compression mode: retain, which means no compression.
Definition: fs_optimization.h:621
Structure of audit space, the unit is byte type.
Definition: fs_optimization.h:42
Definition: fx_basic.h:3758
Definition: fs_optimization.h:604
StretchMode
Enumeration for stretch mode.
Definition: fs_optimization.h:655
bool operator !=(const OptimizerSettings &other) const
Not equal operator.
OptimizerOptions
Enumeration for optimizer options.
Definition: fs_optimization.h:903
uint32 content_streams
Total size of all page content streams in bytes.
Definition: fs_optimization.h:101
Definition: fs_common.h:373
ScannedImageCompressMode
Enumeration for compression mode used for color or gray image.
Definition: fs_optimization.h:1226
Optimize PDF document by discarding objects.
Definition: fs_optimization.h:909
Compression mode: high.
Definition: fs_optimization.h:1228
uint32 web_infos
Total size of web-related metadata in bytes.
Definition: fs_optimization.h:227
Compression mode: jpeg.
Definition: fs_optimization.h:1230
FX_UINT32 uint32
32-bit unsigned integer.
Definition: fs_basictypes.h:196
void SetTextSensitivity(int32 text_sensitivity)
Set the text sensitivity for lossy compression modes, used for optimizing color images in a PDF docum...
void SetImageDPI(int32 dpi)
Set the DPI value as the target compressed value for compressing color/gray images in a PDF document.
smooth lines to curves
Definition: fs_optimization.h:974
void * FS_HANDLE
Handle type.
Definition: fs_basictypes.h:214
When this is set, that means not to do any interpolation for stretching.
Definition: fs_optimization.h:667
uint32 link_annots
Total size of link annotations in bytes.
Definition: fs_optimization.h:150
Compression quality: Lossy.
Definition: fs_optimization.h:637
Header file for common definitions and classes.
static AuditSpaceSize ComputeAuditSpace(const pdf::PDFDoc &doc)
Compute audit space.
ImageSettings & operator=(const ImageSettings &other)
Assign operator.
Compression mode: jpeg.
Definition: fs_optimization.h:359
Optimize PDF document by cleaning up.
Definition: fs_optimization.h:907
In streams that use LZW encoding, use Flate instead.
Definition: fs_optimization.h:925
void SetOptimizerOptions(uint32 optimize_options)
Set options to decide which kind of optimizer setting will be used for optimizing PDF document.
bool IsEmpty() const
Check whether current object is empty or not.
virtual common::file::StreamCallback * GetTemporaryFileStream(const common::Bitmap &bitmap)=0
Get temporary file stream. The file stream is used for saving the encoding result of JPEG2000 and JBI...
uint32 fonts
Total size of embedded fonts in bytes.
Definition: fs_optimization.h:115
bool operator==(const OptimizeScannedPDFSettings &other) const
Equal operator.
ImageCompressQuality
Enumeration for loss compression quality used for color or gray image.
Definition: fs_optimization.h:373
void SetCompressionMode(ImageCompressMode mode)
Set compression mode used for optimizing color/gray images in a PDF document.
Remove invalid bookmarks.
Definition: fs_optimization.h:927
Discard private data of other applications.
Definition: fs_optimization.h:992
Compression quality: Low, only for e_ImageCompressHigh compress mode.
Definition: fs_optimization.h:641
Compression quality: Medium.
Definition: fs_optimization.h:379
FX_INT32 int32
32-bit signed integer.
Definition: fs_basictypes.h:194
Definition: fs_basictypes.h:449
void SetBackgroundDownScale(int32 down_scale)
Set the background downscale value for lossy compression modes, used for optimizing color images in a...
void SetMonoImageSettings(const MonoImageSettings &settings)
Set optimization related settings for monochrome image.
Compression quality: High.
Definition: fs_optimization.h:381
Header file for PDF page related definitions and classes.
AuditSpaceSize()
Constructor.
Definition: fs_optimization.h:45
uint32 pattern_infos
Total size of pattern objects in bytes.
Definition: fs_optimization.h:171
static common::Progressive StartSubsetEmbedFont(const pdf::PDFDoc &doc, common::PauseCallback *pause)
Start to make subsets for embedded fonts in the given PDF document.
void SetUnembeddedFontNameArray(const WStringArray &font_name_array)
Set a font name array to specify which fonts are to be unembeded.
MonoImageCompressQuality
Enumeration for compression quality used for monochrome image.
Definition: fs_optimization.h:633
When this is set, that means to do without stretching.
Definition: fs_optimization.h:659
Foxit namespace.
Definition: fs_pdf3d.h:27
void SetGrayscaleImageSettings(const ImageSettings &settings)
Set optimization related settings for grayscale image.
bool operator !=(const MonoImageSettings &other) const
Not equal operator.
StretchMode
Enumeration for stretch mode.
Definition: fs_optimization.h:393
When this is set, that means to do default stretching.
Definition: fs_optimization.h:657
Definition: fs_optimization.h:896
Compression mode: jbig2 lossless.
Definition: fs_optimization.h:1246
When this is set, that means not to do halftone for shrinking or rotating.
Definition: fs_optimization.h:401
void SetImageDPI(int32 dpi)
Set the DPI value as the target compressed value for compressing monochrome images in a PDF document.
Compression quality: Maximum.
Definition: fs_optimization.h:383
uint32 named_destnations
Total size of named destinations in bytes.
Definition: fs_optimization.h:157
void SetCleanUpOptions(foxit::uint32 clean_up_options)
Set optimization related options for cleaning up.
Compression mode: jbig2.
Definition: fs_optimization.h:619
static common::Progressive OptimizeScannedPDF(const pdf::PDFDoc &doc, const OptimizeScannedPDFSettings &settings, ImageCompressionCallback *image_compress_callback, common::PauseCallback *pause)
Optimize the scanned PDF document with specified optimizers settings.
Discard bookmarks.
Definition: fs_optimization.h:957
void SetTileSize(int size)
Set the tile size for JPEG2000 compression modes, used for optimizing color/gray images in a PDF docu...
uint32 shading_pattern_infos
Total size of shading pattern information in bytes.
Definition: fs_optimization.h:192
ImageCompressMode
Enumeration for compression mode used for color or gray image.
Definition: fs_optimization.h:355
Compression mode: CCITT Group 4.
Definition: fs_optimization.h:1248
When this is set, that means to do without stretching.
Definition: fs_optimization.h:397
Discard document information and metadata.
Definition: fs_optimization.h:988
Discard document tags.
Definition: fs_optimization.h:968
~MonoImageSettings()
Destructor.
uint32 thumbs
Total size of page thumbnails in bytes.
Definition: fs_optimization.h:213
MonoImageSettings & operator=(const MonoImageSettings &other)
Assign operator.
OptimizerSettings()
Constructor.
Compression mode: run-length.
Definition: fs_optimization.h:623
virtual void Release()=0
A callback function used to release current callback object itself.
Discard all alternate images.
Definition: fs_optimization.h:966
void SetQuality(MonoImageCompressQuality quality)
Set compression quality, used for optimizing monochrome images in a PDF document.
bool IsEmpty() const
Check whether current object is empty or not.
uint32 structure_infos
Total size of structural information in bytes.
Definition: fs_optimization.h:136
~ImageSettings()
Destructor.
uint32 cross_ref_tables
Total size of the cross-reference table in bytes.
Definition: fs_optimization.h:206
CleanUpOptions
Enumeration for cleaning up options.
Definition: fs_optimization.h:921
UnembeddedFontSettings & operator=(const UnembeddedFontSettings &other)
Assign operator.
void SetQuality(ImageCompressQuality quality)
Set the quality for lossy compression modes, used for optimizing color/gray images in a PDF document.
Remove invalid links.
Definition: fs_optimization.h:929
Compression quality: Maximum, only for e_ImageCompressHigh compress mode.
Definition: fs_optimization.h:647
Discard embedded search index.
Definition: fs_optimization.h:970
Compression mode: high.
Definition: fs_optimization.h:357
bool operator !=(const OptimizeScannedPDFSettings &other) const
Not equal operator.