PrintUserParams Class Documentation

class PrintUserParams

Namespace:com::datalogics::PDFL

Detailed Description

A structure used to set parameters for print jobs. Two structures provide settings for setting parameters for print jobs, PrintUserParams and PrintParams. PrintUserParams was created first, and then PrintParams was created as an extension of PrintUserParams, to provide more settings to account for changing technology.

When the system seeks to print a document it will pass the content and the print parameters, such as the page size, paper tray, and landscape v. portrait, to the print API in APDFL. If the setting is in PrintParams it will pass the document and parameters to PrintParams and then to PrintUserParams and from there to the print API to complete the printing process.

The print logic may take different code paths depending on whether or not the print content is being sent to a printer or to a file, or if the printing uses PostScript or not. When you see a print setting that appears in both PrintUserParams and PrintParams, such as "ShrinktoFit," set the appropriate value in both of these classes. Also, PrintParams offers a variety of settings related to PostScript, but the use of PrintParams is not limited to PostScript.

Referenced by

Constructor & Destructor Documentation

PrintUserParams

PrintUserParams()

Constructs a PrintUserParams with default settings. Initializes the print parameters to default values: paper size set to use the media box, emit to printer enabled, emit to file disabled, and zero copies. On macOS, also initializes the system print session, print settings, and page format.

Field Documentation

USE_CROP_BOX

static USE_CROP_BOX

When paper height and width are initialized to this value the crop box of each individual page will be used to determine the paper size.

USE_MEDIA_BOX

static USE_MEDIA_BOX

When paper height and width are initialized to this value the printed product more closely resembles what comes out of most PDF Viewers. This can eliminate some print problems, including PCL blank page problems.

Member Function Documentation

choosePaperSourceBySize

void choosePaperSourceBySize(double width, double height)

Parameters

width: double

the desired width of the output in user units

height: double

the desired height of the output in user units

Returns:

void

Choose the best paper source for a given width and height.

Searches the printer's paper list for the smallest paper size that is greater than or equal to the given width and height, including with rotation, and sets up the job to print with that paper size.

To obtain width and height, specify the Right - Left and Top - Bottom of the MediaBox of a representative Page.

The printerName and portName must be set.

If you use this call in conjunction with PosePrintDialog, UseDefaultPrinter, or UpdateFromPrinterSettings, call this function after those functions.

Setting RotateAndCenter to True is recommended with this function.

delete

synchronized void delete(Boolean disposing)

Parameters

disposing: Boolean

Returns:

synchronized void

delete

synchronized void delete()

Returns:

synchronized void

enumeratePaperSources

java.util.List< String > enumeratePaperSources()

Returns:

java.util.List< String >

Set of the tray/bin names.

Enumerates available tray/bin names for the specified printer.

finalize

void finalize()

Returns:

void

getBinaryOK

int getBinaryOK()

Returns:

int

Binary ok setting.

Gets whether to enable Binary data, 1 turns it on and 0 turns it off. It applies to a Postscript printer. This API is available on Windows and macOS only.

getCollate

boolean getCollate()

Returns:

boolean

True if copies should be collated.

Collate property.

getCommand

String getCommand()

Returns:

String

command line arguments

Gets the Optional command line arguments on Unix. It is used only if emitToPrinter is true. For example, "lp" or "lpr" applies to a Postscript printer. This API is available on Unix only.

getDeviceName

String getDeviceName()

Returns:

String

The unicode name of the device to print to (for example, "Distiller Assistant
v3.01"). Available devices can be found in the Windows Registry at HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\Devices. It applies to a printer.

getDoOPP

int getDoOPP()

Returns:

int

1 if OverPrint Preview will be used, 0 if not

Gets the OverPrint Preview setting, 1 uses it, 0 does not. It applies to a printer. The default is 0. This API is available on Windows and macOS only.

getDriverName

String getDriverName()

Returns:

String

The unicode name of the driver (for example, "winspool"). See the registry key for deviceName. It applies to the printer.

getEmitHalftones

int getEmitHalftones()

Returns:

int

1 if halftones will be emitted, 0 if not

Gets the Emit half-tones setting, 1 turns it on, 0 turns it off. It applies to a Postscript printer. This API is available on Windows and macOS only.

getEmitToFile

boolean getEmitToFile()

Returns:

boolean

true if a PostScript file is created.

Gets whether a Postscript file is created.

getEmitToPrinter

boolean getEmitToPrinter()

Returns:

boolean

true if output to a printer.

Gets whether to Output the PDF document to a Postscript Printer.

getEndPage

int getEndPage()

Returns:

int

the page to end upon

Gets the page on which to finish printing, using zero-based nubmering. It applies to a printer. This API is only available on Windows and macOS only.

getFarEastFontOpt

FarEastFont getFarEastFontOpt()

Returns:

FarEastFont

a PDFarEastFont value that represents the setting to be used

Gets the Far East Font setting. The default value is DownloadAll. PrintAsImage will not be honored. It applies to a Postscript printer. This API is available on Windows only.

getInFileName

String getInFileName()

Returns:

String

Unicode name used for the Windows DOCINFO structure (lpszDocName) that points to a NULL-terminated string that specifying the name of the document. In case of printing/exporting to Postscript, this field sets the Title DSC comment in the generated Postscript file. If inFileName was not provided, the Title DSC comment is filled with the name of pdf document.

getNCopies

int getNCopies()

Returns:

int

the number of copies that will be printed

Gets the number of copies to print. It applies to a Postscript file.

getOutFileName

String getOutFileName()

Returns:

String

Unicode name used for the Windows DOCINFO structure (lpszOutput). It points to a NULL-terminated string that specifies the name of an output file. If this pointer is NULL, the output will be sent to the device identified by deviceName, driverName, and portName. It applies to a printer.

getPaperHeight

int getPaperHeight()

Returns:

int

the height of the paper in points

Gets the Height of paper in points. The default value is 792. It applies to a Postscript printer.

getPaperSource

int getPaperSource()

Returns:

int

Value in DEVMODE->dmDefaultSource if initialized or index of selected paper tray or -1 if not specified.

Paper source property.

getPaperWidth

int getPaperWidth()

Returns:

int

the width of the paper in points

Gets the Width of paper in points. The default value is 612. It applies to a Postscript printer.

getPortName

String getPortName()

Returns:

String

The unicode name of the port (for example, "Ne00"). See the registry key for deviceName. It applies to the printer.

getPrintAnnots

int getPrintAnnots()

Returns:

int

1 if annotations will be printed, 0 if not

Gets the printing annotations setting, 1 turns it on, 0 turns it off. It applies to a printer. This API is available on Windows and macOS only.

getPrintParams

PrintParams getPrintParams()

Returns:

PrintParams

the print parameter settings

Gets the Print Parameter settings.

getPsLevel

int getPsLevel()

Returns:

int

Postscript level setting

Gets the Postscript level. It applies to a Postscript printer. This API is available on Windows and macOS only.

getReverse

int getReverse()

Returns:

int

1 to reverse page order or 0 for regular order

Gets whether to reverses print order, 1 reverses it and 0 does regular order. It applies to a printer. This API is available on Windows and macOS only.

getShrinkToFit

boolean getShrinkToFit()

Returns:

boolean

true if the page will be shrunk to fit

Gets the Shrink to fit setting, true turns it on, false turns it off. It applies to a Postscript printer. This API is available on Windows and macOS only.

getStartPage

int getStartPage()

Returns:

int

the start page

Gets the page to start printing with, using zero-based numbering. It applies to a printer. This API is only available on Windows and macOS only.

getStartResult

int getStartResult()

Returns:

int

the Spooler ID

Gets the Spooler ID from StartDoc. This API is available on Windows and Unix only.

getTransQuality

int getTransQuality()

Returns:

int

the transparency flatting quality, 1 is fastest; 5 is best

Gets the Transparency flattening quality control. 1 is fastest; 5 is best. The default is 3. It applies to a printer. This API is available on Windows only.

getUseCustomPaperSize

boolean getUseCustomPaperSize()

Returns:

boolean

true if force.

Gets whether to force the use of the paper size provided in the PaperWidth and PaperHeight parameters and not search for best fit size provided by printer. SetPageSize must also be set.

paperSourceIdByName

int paperSourceIdByName(String trayName)

Parameters

trayName: String

the tray/bin's name whose number need to obtain.

Returns:

int

Tray/Bin number corresponding to the specified name.

Obtain tray/bin number by its name.

posePrintDialog

boolean posePrintDialog(Document doc)

Parameters

doc: Document

a Document which will be used to set the maximum page range in the dialog box.

Returns:

boolean

true if the user accepted the dialog box, false if it was cancelled

Set the print parameters by posing a dialog box to the user. The parameters set include the printer, page range, paper size, number of copies, and duplexing mode.

Changes to these parameters made by the user will be copied into the corresponding PrintUserParams fields. If you want to override the user's choices, change these fields after calling PosePrintDialog().

setBinaryOK

void setBinaryOK(int binaryOK)

Parameters

binaryOK: int

Binary Ok setting.

Returns:

void

Sets whether to enable Binary datam, 1 turns it on and 0 turns it off. It applies to a Postscript printer. This API is available on Windows and macOS only.

setCollate

void setCollate(boolean collate)

Parameters

collate: boolean

True if need to collate copies.

Returns:

void

Collate property.

setCommand

void setCommand(String command)

Parameters

command: String

the optional command line arguments

Returns:

void

Sets the Optional command line arguments on Unix. It is used only if emitToPrinter is true. For example, "lp" or "lpr" applies to a Postscript printer. This API is available on Unix only.

setDeviceName

void setDeviceName(String inStr)

Parameters

inStr: String

Returns:

void

setDoOPP

void setDoOPP(int doOPP)

Parameters

doOPP: int

1 if OverPrint Preview will be used, 0 if not

Returns:

void

Sets the OverPrint Preview setting, 1 uses it, 0 does not. The default is 0. It applies to a printer. This API is available on Windows and macOS only.

setDriverName

void setDriverName(String inStr)

Parameters

inStr: String

Returns:

void

setEmitHalftones

void setEmitHalftones(int emitHalftones)

Parameters

emitHalftones: int

1 if halftones will be emitted, 0 if not

Returns:

void

Sets the Emit half-tones setting, 1 turns it on, 0 turns it off. It applies to a Postscript printer. This API is available on Windows and macOS only.

setEmitToFile

void setEmitToFile(boolean emitToFile)

Parameters

emitToFile: boolean

pass true to emit output to a PostScript file

Returns:

void

Sets whether a Postscript file is created. You set either this parameter or emitToPrinter, but not both.

setEmitToPrinter

void setEmitToPrinter(boolean emitToPrinter)

Parameters

emitToPrinter: boolean

pass true to emit to the printer

Returns:

void

Sets whether to Output the PDF document to a Postscript Printer. Set either this parameter or emitToFile, but not both.

setEndPage

void setEndPage(int endPage)

Parameters

endPage: int

the page to end upon

Returns:

void

Sets the page on which to finish printing, using zero-based nubmering. It applies to a printer. This API is only available on Windows and macOS only.

setFarEastFontOpt

void setFarEastFontOpt(FarEastFont farEastFontOpt)

Parameters

farEastFontOpt: FarEastFont

a PDFarEastFont value that represents the setting to be used

Returns:

void

Sets the Far East Font setting. The default value is DownloadAll. PrintAsImage will not be honored. It applies to a Postscript printer. This API is available on Windows only.

setInFileName

void setInFileName(String inStr)

Parameters

inStr: String

Returns:

void

setNCopies

void setNCopies(int nCopies)

Parameters

nCopies: int

the number of copies to print.

Returns:

void

Sets the number of copies to print. It applies to a Postscript file.

setOutFileName

void setOutFileName(String inStr)

Parameters

inStr: String

Returns:

void

setPaperHeight

void setPaperHeight(int paperHeight)

Parameters

paperHeight: int

the height of the paper in points

Returns:

void

Sets the Height of paper in points. The default value is 792. It applies to a Postscript printer.

setPaperSource

void setPaperSource(int PaperSource)

Parameters

PaperSource: int

paper source which must be selected.

Returns:

void

Paper source property.

setPaperWidth

void setPaperWidth(int paperWidth)

Parameters

paperWidth: int

the width of the paper in points

Returns:

void

Sets the Width of paper in points. The default value is 612. It applies to a Postscript printer.

setPortName

void setPortName(String inStr)

Parameters

inStr: String

Returns:

void

setPrintAnnots

void setPrintAnnots(int printAnnots)

Parameters

printAnnots: int

1 to print annotations, 0 to not print them.

Returns:

void

Sets the printing annotations setting, 1 turns it on, 0 turns it off. It applies to a printer. This API is available on Windows and macOS only.

setPsLevel

void setPsLevel(int psLevel)

Parameters

psLevel: int

Postscript Level setting.

Returns:

void

Sets the Postscript level. It applies to a Postscript printer. This API is available on Windows and macOS only.

setReverse

void setReverse(int reverse)

Parameters

reverse: int

1 to reverse page order or 0 for regular order

Returns:

void

Sets whether to reverses print order, 1 reverses it and 0 does regular order. It applies to a printer. This API is available on Windows and macOS only.

setShrinkToFit

void setShrinkToFit(boolean shrinkToFit)

Parameters

shrinkToFit: boolean

pass true to shrink the page to fit

Returns:

void

Sets the Shrink to fit setting, true turns it on, false turns it off. It applies to a PostScript printer. This API is available on Windows and macOS only.

setStartPage

void setStartPage(int startPage)

Parameters

startPage: int

the page to start on

Returns:

void

Sets the page to start printing with, using zero-based numbering. It applies to a printer. This API is only available on Windows and macOS only.

setStartResult

void setStartResult(int startResult)

Parameters

startResult: int

the Spooler ID

Returns:

void

Sets the Spooler ID for StartDoc. This API is available on Windows and Unix only.

setTransQuality

void setTransQuality(int transQuality)

Parameters

transQuality: int

the transparency flatting quality, 1 is fastest; 5 is best

Returns:

void

Sets the Transparency flattening quality control. 1 is fastest; 5 is best. The default is 3. It applies to a printer. This API is available on Windows only.

setUseCustomPaperSize

void setUseCustomPaperSize(boolean useCustomPaperSize)

Parameters

useCustomPaperSize: boolean

pass true to use custom size.

Returns:

void

Sets whether to force the use of the paper size provided in the PaperWidth and PaperHeight parameters and not search for best fit size provided by printer. SetPageSize must also be set.

useDefaultPrinter

void useDefaultPrinter(Document doc)

Parameters

doc: Document

a Document which will be used to set the maximum page range.

Returns:

void

Set the print parameters to the defaults. The parameters set include the printer, page range, paper size, number of copies, and duplexing mode.

Operating system defaults for these parameters will be copied into the corresponding PrintUserParams fields. If you want to override the system defaults, change these fields after calling UseDefaultPrinter().