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 {
923 typedef enum _CleanUpOptions {
943 typedef enum _DiscardObjectsOptions {
984 typedef enum _DiscardUserDataOptions {
1006 typedef enum _TransparencyMode {
1281 typedef enum _ScannedImageCompressMode {
1297 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.
Transparency mode: high resolution.
Definition: fs_optimization.h:1036
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:1297
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:1368
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:933
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:220
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:925
Optimize PDF document by discarding user data.
Definition: fs_optimization.h:913
Compression mode: jpeg2000 lossy.
Definition: fs_optimization.h:1289
Header file for PDF document related definitions and classes.
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:1287
Compression mode: CCITT Group 3.
Definition: fs_optimization.h:613
Definition: fs_basictypes.h:227
void SetStretchMode(StretchMode mode)
Set stretch mode used for optimizing monochrome images in a PDF document.
Discard embedded print settings.
Definition: fs_optimization.h:957
Discard hidden layer content and flatten visible layers.
Definition: fs_optimization.h:996
Compression mode: jbig2 lossy.
Definition: fs_optimization.h:1299
Discard file attachments.
Definition: fs_optimization.h:992
uint32 color_space
Total size of color space definitions in bytes.
Definition: fs_optimization.h:164
void SetTransparencyMode(TransparencyMode transparency_mode)
Set optimization related options for doing transparency.
void SetUnembeddedFontSettings(const UnembeddedFontSettings &settings)
Set optimization related settings for unembedding fonts.
Detect and merge image fragments.
Definition: fs_optimization.h:974
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:945
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:776
DiscardUserDataOptions
Enumeration for discarding user data options.
Definition: fs_optimization.h:984
Definition: fs_optimization.h:348
Definition: fs_optimization.h:1274
Compression mode: high.
Definition: fs_optimization.h:617
Definition: fs_optimization.h:234
Compression mode: high.
Definition: fs_optimization.h:1305
MonoImageSettings()
Constructor.
Compression mode: jpeg2000.
Definition: fs_optimization.h:361
Discard all JavaScript actions.
Definition: fs_optimization.h:953
bool operator==(const ImageSettings &other) const
Equal operator.
~UnembeddedFontSettings()
Destructor.
Flatten form fields.
Definition: fs_optimization.h:947
discard tag user data
Definition: fs_optimization.h:998
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:988
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:935
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:986
DiscardObjectsOptions
Enumeration for discarding objects options.
Definition: fs_optimization.h:943
Definition: fs_optimization.h:808
ImageSettings()
Constructor.
Discard embedded page thumbnails.
Definition: fs_optimization.h:955
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:1281
Optimize PDF document by discarding objects.
Definition: fs_optimization.h:909
Compression mode: high.
Definition: fs_optimization.h:1283
uint32 web_infos
Total size of web-related metadata in bytes.
Definition: fs_optimization.h:227
Compression mode: jpeg.
Definition: fs_optimization.h:1285
FX_UINT32 uint32
32-bit unsigned integer.
Definition: fs_basictypes.h:195
Transparency mode: low resolution.
Definition: fs_optimization.h:1016
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:976
void * FS_HANDLE
Handle type.
Definition: fs_basictypes.h:213
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:927
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:929
Discard private data of other applications.
Definition: fs_optimization.h:994
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:193
Definition: fs_basictypes.h:451
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 SetSubsetAllEmFonts(bool is_subset_all_emb_fonts)
Sets whether to include subsets of all unembedded fonts.
void SetUnembeddedFontNameArray(const WStringArray &font_name_array)
Set a font name array to specify which fonts are to be unembeded.
Transparency mode: medium resolution.
Definition: fs_optimization.h:1026
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_taggedpdf.h:27
Optimize PDF document by doing transparency.
Definition: fs_optimization.h:915
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:1301
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:959
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:1303
When this is set, that means to do without stretching.
Definition: fs_optimization.h:397
Discard document information and metadata.
Definition: fs_optimization.h:990
Discard document tags.
Definition: fs_optimization.h:970
~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:968
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:923
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:931
Compression quality: Maximum, only for e_ImageCompressHigh compress mode.
Definition: fs_optimization.h:647
Discard embedded search index.
Definition: fs_optimization.h:972
TransparencyMode
Enumeration for transparency mode.
Definition: fs_optimization.h:1006
Compression mode: high. This flag will be invalid if the image dpi is less than 200.
Definition: fs_optimization.h:357
bool operator !=(const OptimizeScannedPDFSettings &other) const
Not equal operator.