The PDFCOMPOPTIONS structure provides information about PDF Compressor options.
typedef struct _PDFCOMPOPTIONS
} PDFCOMPOPTIONS, * LPPDFCOMPOPTIONS;
Size of this structure in bytes, for versioning. Use the sizeof() operator to calculate this value.
Flag that indicates the PDF Compressor options behavior. Possible values are:
|PDFCOMP_FAVOR_ONEBIT||[0x00] Favor the detection of 1-bit segments.|
|PDFCOMP_FAVOR_TWOBIT||[0x01] Favor the detection of 2-bit segments.|
|PDFCOMP_FORCE_ONEBIT||[0x02] Force all 2-bit segments to be 1-bit.|
|PDFCOMP_FORCE_TWOBIT||[0x03] Force all 1-bit segments to be 2-bit.|
|PDFCOMP_WITH_BACKGROUND||[0x00] Detect background segments.|
|PDFCOMP_WITHOUT_BACKGROUND||[0x10] Do not detect background segments.|
Value that indicates the bitmap's quality before processing. Possible values are:
|PDFCOMP_IMAGEQUALITY_UNKNOWN|| Unknown image quality. Use default handling.|
|PDFCOMP_IMAGEQUALITY_NOISY|| The source image is noisy.|
|PDFCOMP_IMAGEQUALITY_SCANNED|| The source image a scanned image.|
|PDFCOMP_IMAGEQUALITY_PRINTED|| The source image is a printed document.|
|PDFCOMP_IMAGEQUALITY_COMPUTER_GENERATED|| The source image is a high quality computer-generated image.|
|PDFCOMP_IMAGEQUALITY_PHOTO|| The source image is a high quality photo image; for example, from a digital camera .|
|PDFCOMP_IMAGEQUALITY_USER|| The quality is set manually. This flag is for advanced users.|
Value that indicates the image's output quality. Possible values are:
|PDFCOMP_OUTPUTQUALITY_AUTO|| Choose the quality of the output automatically.|
|PDFCOMP_OUTPUTQUALITY_POOR|| Poor output quality with best compression.|
|PDFCOMP_OUTPUTQUALITY_AVERAGE|| Average output quality with average compression.|
|PDFCOMP_OUTPUTQUALITY_GOOD|| Good output quality with good compression.|
|PDFCOMP_OUTPUTQUALITY_EXCELLENT|| Excellent output quality with poor compression.|
|PDFCOMP_OUTPUTQUALITY_USER|| The user detects the output quality. This flag is for advanced users.|
Value that indicates the size of the area used to remove the noise inside the segmented image. Possible values range from 0 to 10, where 0 means skip the cleaning stage.
Threshold value used to separate image objects from the background. Best values are from 5 to 35.
Threshold value used to combine colors. Colors that are closer together than this amount will be combined. Possible values range from 0 to 300. The best value is 25.
Threshold value used to determine whether the segment is a picture segment. Possible values range from 0 to 100. Use 0 to set all possible picture segments to 2-bit without losing a lot of information. Use 100 to set all picture segments to 2-bit only if they are very close to 2-bit.
Threshold value used to merge segments. Best values are from 75 to 125.
LPPDFCOMPOPTIONS is a pointer to a PDFCOMPOPTIONS structure. Where a function parameter type is LPPDFCOMPOPTIONS, declare a PDFCOMPOPTIONS variable and pass the variable's address in the parameter. Declaring an LPPDFCOMPOPTIONS variable is necessary only if the program requires a pointer.
The values of uCleanSize, uBackGroundThreshold and uCombineThreshold are valid only if the imageQuality is set to PDFCOMP_IMAGEQUALITY_USER flag.
The values of uSegmentQuality and uColorThreshold are valid only if the outputQuality is set to PDFCOMP_OUTPUTQUALITY_USER flag.