typedef struct _PDFCOMPOPTIONS
{
L_UINT uStructSize;
L_UINT32 dwFlags;
PDFCOMP_IMAGEQUALITY imageQuality;
PDFCOMP_OUTPUTQUALITY outputQuality;
L_UINT uCleanSize;
L_UINT uBackGroundThreshold;
L_UINT uCombineThreshold;
L_UINT uSegmentQuality;
L_UINT uColorThreshold;
} PDFCOMPOPTIONS, * LPPDFCOMPOPTIONS;
The PDFCOMPOPTIONS structure provides information about PDF Compressor options.
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:
Value | Meaning |
---|---|
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:
Value | Meaning |
---|---|
PDFCOMP_IMAGEQUALITY_UNKNOWN | [0] Unknown image quality. Use default handling. |
PDFCOMP_IMAGEQUALITY_NOISY | [1] The source image is noisy. |
PDFCOMP_IMAGEQUALITY_SCANNED | [2] The source image a scanned image. |
PDFCOMP_IMAGEQUALITY_PRINTED | [3] The source image is a printed document. |
PDFCOMP_IMAGEQUALITY_COMPUTER_GENERATED | [4] The source image is a high quality computer-generated image. |
PDFCOMP_IMAGEQUALITY_PHOTO | [5] The source image is a high quality photo image; for example, from a digital camera . |
PDFCOMP_IMAGEQUALITY_USER | [6] The quality is set manually. This flag is for advanced users. |
Value that indicates the image's output quality. Possible values are:
Value | Meaning |
---|---|
PDFCOMP_OUTPUTQUALITY_AUTO | [0] Choose the quality of the output automatically. |
PDFCOMP_OUTPUTQUALITY_POOR | [1] Poor output quality with best compression. |
PDFCOMP_OUTPUTQUALITY_AVERAGE | [2] Average output quality with average compression. |
PDFCOMP_OUTPUTQUALITY_GOOD | [3] Good output quality with good compression. |
PDFCOMP_OUTPUTQUALITY_EXCELLENT | [4] Excellent output quality with poor compression. |
PDFCOMP_OUTPUTQUALITY_USER | [5] 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.
This structure is used with the L_PdfCompInsertMRC function.