ImageGear for C and C++ on Linux v20.0 - Updated
API Reference Guide > PDF Component API Reference > PDF Component Structures Reference > AT_PDF_PRINTPARAMS

This structure indicates how a document should be printed.


Copy Code
typedef struct tagAT_PDF_PRINTPARAMS
        AT_UINT size;
        AT_PDF_PAGE_RANGE* ranges;
        AT_INT32 numRanges;
        AT_PDF_BOOL shrinkToFit;
        AT_PDF_BOOL expandToFit;
        AT_PDF_BOOL rotateAndCenter;
        CHAR printWhat;
        CHAR printWhatAnnot;
        AT_PDF_BOOL emitPS;
        AT_INT32 psLevel;
        CHAR outputType;
        CHAR incBaseFonts;
        CHAR incEmbeddedFonts;
        CHAR incType1Fonts;
        CHAR incType3Fonts;
        CHAR incTrueTypeFonts;
        CHAR incCIDFonts;
        CHAR incProcsets;
        CHAR incOtherResources;
        AT_INT32 fontPerDocVM;
        AT_PDF_BOOL emitShowpage;
        AT_PDF_BOOL emitTTFontsFirst;
        AT_PDF_BOOL setPageSize;
        AT_PDF_BOOL emitDSC;
        AT_PDF_BOOL setupProcsets;
        AT_PDF_BOOL emitColorSeps;
        AT_PDF_BOOL binaryOK;
        AT_PDF_BOOL useSubFileDecode;
        AT_PDF_BOOL emitRawData;
        AT_PDF_BOOL TTasT42;
        AT_FLOAT scale;
        AT_PDF_BOOL emitExternalStreamRef;
        AT_PDF_BOOL emitHalftones;
        AT_PDF_BOOL emitPSXObjects;
        AT_PDF_BOOL centerCropBox;
        AT_PDF_BOOL emitSeparableImagesOnly;
        AT_PDF_BOOL emitDeviceExtGState;
        AT_PDF_FIXEDRECT boundingBox;
        AT_PDF_BOOL useFontAliasNames;
        AT_PDF_BOOL emitPageRotation;
        AT_PDF_BOOL reverse;
        AT_PDF_FIXEDRECT* tCropBox;
        AT_PDF_BOOL emitPageClip;
        AT_PDF_BOOL emitTransfer;
        AT_PDF_BOOL emitBG;
        AT_PDF_BOOL emitUCR;
        CHAR farEastFontOpt;
        AT_PDF_BOOL suppressCJKSubstitution;
        AT_PDF_BOOL suppressCSA;
        AT_PDF_BOOL hostBased;
        HIG_PDF_ATOM hostBasedOutputCS;
        CHAR duplex;
        CHAR doTiling;
        LPAT_PDF_TILEEX tileInfo;
        AT_PDF_BOOL rotate;
        AT_PDF_BOOL hostBasedCM;
        char destProfile[256]; 
        HIG_PDF_ATOM destCSAtom;
        AT_PDF_BOOL saveVM;
        AT_PDF_BOOL doOPP;
        AT_INT32 suppressOPPWhenNoSpots;
        AT_PDF_BOOL optimizeForSpeed;
        AT_PDF_BOOL brokenCRDs;
        AT_PDF_BOOL useMaxVM;
        AT_INT32 lastWidth;
        AT_INT32 lastHeight;
        AT_DWORD bitmapResolution;
        AT_DWORD gradientResolution;
        AT_DWORD transparencyQuality;
        AT_DWORD ocContext;
        AT_PDF_BOOL applyOCGPrintOverrides;
        AT_PDF_BOOL useFullResolutionJP2KData;
        AT_PDF_BOOL emitInRipSeps;
        AT_DWORD whichMarks;
        AT_PDF_BOOL westernMarksStyle;
        AT_PDF_BOOL doProofing;
        char proofProfile[256];
        AT_PDF_BOOL inkBlack;
        AT_PDF_BOOL paperWhite;
        AT_PDF_BOOL useExecForm;
        LPAT_PDF_FLATTEN flattenInfo;
        AT_PDF_BOOL negative;
        CHAR mirrorprint;
        AT_DWORD numCollatedCopies;
        AT_PDF_BOOL emitFlatness;
        AT_INT32 trapType;
        AT_PDF_BOOL TTasCIDT2;
        AT_DWORD markStyle;
        AT_FLOAT lineWidth;
        AT_PDF_BOOL macQDPrinter;
        AT_UINT customMarksFileName;
        AT_VOID* pAGMPI;
        AT_PDF_BOOL disableFlattening;
        AT_PDF_BOOL doNotDownloadFauxFonts;
        AT_PDF_BOOL suppressSnapToDevice;
        AT_INT32 suppressElement;
        AT_DWORD maxFlatSeconds;
        AT_DWORD testTilingMode;


Name Type Description
size AT_UINT Size of the data structure. Must be set to sizeof(AT_PDF_PRINTPARAMS).
ranges AT_PDF_PAGE_RANGE* Ranges of pages to print. Use NULL to print the entire document.
numRanges AT_INT32 Number of ranges of pages to print in ranges. The default value is 0.
shrinkToFit AT_PDF_BOOL TRUE if the page is scaled to fit the printer page size; FALSE otherwise. This field overrides scale. The default value is FALSE.
expandToFit AT_PDF_BOOL TRUE if small pages are to be scaled up to fit the printer page size; FALSE otherwise. Overrides scale. The default value is FALSE.
rotateAndCenter AT_PDF_BOOL TRUE if page is to be rotated to fit printer's orientation, and centered in printer's page size; FALSE otherwise.The default value is FALSE. Rotation and centering (TRUE) only occur, however, if the page contents are too wide to fit on a narrow page (or vice versa) and the page contents are less than an inch smaller than the target page in one direction.
printWhat CHAR enumIGPDFPrintWhat flag. Default is IG_PDF_PRINT_DOCUMENT.
printWhatAnnot CHAR Combination of enumIGPDFPrintWhatAnnot flags which extend printWhat to enable product behavior.
emitPS AT_PDF_BOOL If TRUE, emit a PostScript file. The default value is TRUE.
psLevel AT_INT32 PostScript level: 1, 2 or 3. The default value is 2.
outputType CHAR Print PostScript or EPS with or without a preview.
incBaseFonts CHAR Embed the base fonts. The default value is IG_PDF_INCLUDE_NEVER.
incEmbeddedFonts CHAR Embed fonts that are embedded in the PDF file. This overrides the incType1Fonts, incTrueTypeFonts, and incCIDFonts fields. The default value is IG_PDF_INCLUDE_ONCE_PER_DOC.
incType1Fonts CHAR Embed Type 1 fonts. The default value is IG_PDF_INCLUDE_ONCE_PER_DOC.
incType3Fonts CHAR

Embed Type 3 fonts. The default value is IG_PDF_INCLUDE_ON_EVERY_PAGE. 

This parameter must always be set to IG_PDF_INCLUDE_ON_EVERY_PAGE. PDF files exist with Type 3 fonts that contain different encodings on different pages.

incTrueTypeFonts CHAR Embed TrueType fonts. The default value is IG_PDF_INCLUDE_ONCE_PER_DOC.
incCIDFonts CHAR Embed CID fonts. The default value is IG_PDF_INCLUDE_ONCE_PER_DOC.
incProcsets CHAR Include Procsets in the file. The default value is IG_PDF_INCLUDE_ONCE_PER_DOC.
incOtherResources CHAR Include all other types of resources in the file. The default value is IG_PDF_INCLUDE_ONCE_PER_DOC.
fontPerDocVM AT_INT32

Amount of VM available for font downloading at the document level. Ignored if <=0. 

This must be set to 0 for the toolkit; it is only used by the viewer.

emitShowpage AT_PDF_BOOL Emit save and restore showpage in PostScript files. The default value is TRUE.
emitTTFontsFirst AT_PDF_BOOL Emit TrueType fonts before any other fonts. The default value is FALSE.
setPageSize AT_PDF_BOOL (PostScript level 2 only) Set the page size on each page. Use the media box for outputting to PostScript files, use the crop box for EPS files. Default is FALSE.
emitDSC AT_PDF_BOOL Write DSC (Document Structuring Conventions) comments. The default value is TRUE.
setupProcsets AT_PDF_BOOL

If procsets are included, also include init/term code. The default value is TRUE. 

This must be set to TRUE.

emitColorSeps AT_PDF_BOOL Emit images for Level-1 separations. The default value is FALSE.
binaryOK AT_PDF_BOOL TRUE if binary data is permitted in the PostScript file; FALSE otherwise. The default value is TRUE.
useSubFileDecode AT_PDF_BOOL Add SubFileDecode filter to work around stream problems. The default value is FALSE.
emitRawData AT_PDF_BOOL TRUE if add no unnecessary filters when emitting image data; FALSE otherwise. The default value is TRUE.
TTasT42 AT_PDF_BOOL If including TrueType fonts, convert to Type 42 fonts instead of Type 1 fonts. The default value is FALSE.
scale AT_FLOAT Document-wide scale factor. 100.0 = full size. The default value is 100.
emitExternalStreamRef AT_PDF_BOOL If an Image resource uses an external stream, emit code that points to the external file. The default value is FALSE.
This must be set to FALSE.
emitHalftones AT_PDF_BOOL Preserve any halftone screening in the PDF file. The default value is FALSE.
emitPSXObjects AT_PDF_BOOL Emit PostScript XObjects into the PostScript stream. The default value is FALSE.
centerCropBox AT_PDF_BOOL TRUE if CropBox output is centered on the page when the CropBox < MediaBox; FALSE otherwise. The default value is TRUE.
emitSeparableImagesOnly AT_PDF_BOOL If emitting EPS, include only CMYK and gray images.
emitDeviceExtGState AT_PDF_BOOL When emitting the extended graphics state, include the device-dependent parameters (overprint, black generation, undercolor removal, transfer, halftone, halftone phase, smoothness, flatness, rendering intent) in addition to the device-independent parameters (font, line width, line cap, line join, miter limit, dash pattern). If this flag is FALSE, only the device-independent parameters will be emitted. This flag overrides emitHalftones; if this is FALSE, then halftones are not emitted. The default value is TRUE.
boundingBox AT_PDF_FIXEDRECT If all zeroes, is ignored. Otherwise, is used for %BoundingBox DSC comment and in centerCropBox calculations and for setpagedevice. The default value is [0 0 0 0].
useFontAliasNames AT_PDF_BOOL Used when printing with system fonts. The default value is FALSE.
emitPageRotation AT_PDF_BOOL Emit a concat at the beginning of each page so that the page is properly rotated. Used when emitting EPS. The default value is FALSE.
reverse AT_PDF_BOOL If set to TRUE, reverse the order of page output.
tCropBox AT_PDF_FIXEDRECT* Temporary crop box to represent selected region.
emitPageClip AT_PDF_BOOL Set to TRUE to emit page clip.
emitTransfer AT_PDF_BOOL Set to TRUE to emit transfer.
emitBG AT_PDF_BOOL Set to TRUE to emit black generation.
emitUCR AT_PDF_BOOL Set to TRUE to emit undercolor removal.
farEastFontOpt CHAR Far East font option. Currently not used. Set to 0.
suppressCJKSubstitution AT_PDF_BOOL If TRUE, do not do CJK substitution on the printer.
suppressCSA AT_PDF_BOOL If TRUE, don't emit CSAs for 4 component (CMYK) colors.
hostBased AT_PDF_BOOL For separator, do host-based color management.
hostBasedOutputCS HIG_PDF_ATOM The output color space when hostBased color management is TRUE.
duplex CHAR Currently not used. Set to 0.
doTiling CHAR Whether to tile none, all, or only large pages
tileInfo LPAT_PDF_TILEEX If non-NULL, tiling is desired with these parameters.
rotate AT_PDF_BOOL Enable the auto-rotating behavior from past versions of Acrobat.
hostBasedCM AT_PDF_BOOL Host base color management. Default: FALSE, do CSA generation for profiles instead of converting all colors on the host.
destProfile char[256] If hostBaseCM color management is TRUE, use this profile.
destCSAtom HIG_PDF_ATOM An atom representing the device color space (DeviceGray, DeviceRGB, etc.).
saveVM AT_PDF_BOOL TRUE means try to save VM when printing to PostScript.
doOPP AT_PDF_BOOL If TRUE, do the overprint preview operation.
suppressOPPWhenNoSpots AT_INT32 When TRUE, suppress OPP for pages that do not contain spot colors
optimizeForSpeed AT_PDF_BOOL If TRUE, do it fast; FALSE means PostScript code must be page independent. If set to TRUE, font downloads are forced from IG_PDF_INCLUDE_ON_EVERY_PAGE to IG_PDF_INCLUDE_ONCE_PER_DOC.
brokenCRDs AT_PDF_BOOL If TRUE, don't set rendering intent in PostScript stream due to broken non-default CRDs.
useMaxVM AT_PDF_BOOL If TRUE, store all possible resources in VM.
lastWidth AT_INT32 Used when setPageSize is TRUE to prevent unneeded setpagedevice calls.
lastHeight AT_INT32 Used when setPageSize is TRUE to prevent unneeded setpagedevice calls.
bitmapResolution AT_DWORD DPI for bitmaps. Default is 300.
gradientResolution AT_DWORD DPI for gradients interior to the object (not edges). Can generally be lower than the bitmapResolution. Default is 150.
transparencyQuality AT_DWORD The transparency level. Range is 1-100.
ocContext AT_DWORD The optional-content context to use for visibility state information, or NULL to use the document's current states in the default context.
applyOCGPrintOverrides AT_PDF_BOOL When TRUE, apply print-specific visibility state settings from the optional-content group.
useFullResolutionJP2KData AT_PDF_BOOL Whether to use the maximum available JPEG 2000 resolution.
emitInRipSeps AT_PDF_BOOL When TRUE, requests that separations, one sheet per ink, be generated in the RIP (printer).
whichMarks AT_DWORD Page mark indication. A bit-wise OR of the enumIGPDFPageMarkFlags values.
westernMarksStyle AT_PDF_BOOL When TRUE, use western style for page marks.
doProofing AT_PDF_BOOL When TRUE, print using proofing settings.
proofProfile char[256] Description string for the proofing profile.
inkBlack AT_PDF_BOOL Proofing settings: simulate ink black.
paperWhite AT_PDF_BOOL Proofing settings: simulate paper white.
useExecForm AT_PDF_BOOL When TRUE, emit execform calls when emitting Form XObjects.
flattenInfo LPAT_PDF_FLATTEN A structure containing parameters that control tile flattening.
negative AT_PDF_BOOL When TRUE, invert the plate.
mirrorprint CHAR PostScript mirroring attribute. Currently not used.
numCollatedCopies AT_DWORD Enables collation for viewer.
emitFlatness AT_PDF_BOOL Set to TRUE to emit flatness.
trapType AT_INT32 Specifies trap type.
TTasCIDT2 AT_PDF_BOOL Set to TRUE to emit TrueType fonts as CIDType2 instead of as CIDFontType0.
markStyle AT_DWORD Specify the style to use for page marks.
lineWidth AT_FLOAT Line width to use for printer marks.
macQDPrinter AT_PDF_BOOL Set to TRUE if the printer is a Mac QuickDraw printer.



If markStyle == -1, this should be a valid file name pointing to a valid .mrk file for custom printer marks.



The AGMP interface pointer. Should be NULL.



Disable flattening of the PDF file; transparency data will be ignored.



Allow user to select if faux files are downloaded.



Allow user to control "Snap_To_Device".

suppressElement AT_INT32 Unused. Set to 0.
maxFlatSeconds AT_DWORD Maximum flattener session seconds (of execution) before quality reduction.
testTilingMode AT_DWORD Provide a means for all 4 page rotations to be tiling-exercised at once.


All fields in the AT_PDF_PRINTPARAMS structure apply to PostScript file creation. AT_PDF_PRINTPARAMS are ignored when printing to non-PostScript devices.
Is this page helpful?
Yes No
Thanks for your feedback.