PDFCOMPOPTIONS
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, L_FAR * LPPDFCOMPOPTIONS;
The PDFCOMPOPTIONS structure provides information about PDF Compressor options.
Member |
Description |
|
uStructSize |
Size of this structure in bytes, for versioning. Use the sizeof() macro to calculate this value. |
|
dwFlags |
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] Don’t detect background segments. |
imageQuality |
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 is 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. |
outputQuality |
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. |
uCleanSize |
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. |
|
uBackGroundThreshold |
Threshold value used to separate image objects from the background. Best values are from 5 to 35. |
|
uCombineThreshold |
Threshold value used to combine colors. Colors that are closer together than this amount will be combined. The best value is 25. Values saturate at 443. |
|
uSegmentQuality |
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. |
|
uColorThreshold |
Threshold value used to merge segments. Best values are from 75 to 125. |
Comments
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 LPDFCompressor::InsertMRC function.