Foxit PDF SDK
foxit::PrintParams Class Reference

Inherits Object.

Public Types

enum  BookletBinding { e_BookletBindingRight = 0, e_BookletBindingLeft = 1, e_BookletBindingLeftTall = 2, e_BookletBindingRightTall = 3 }
 Enumeration for the values used to determine the duplex printing mode when printing a booklet. More...
 
enum  BookletDuplexMode { e_BookletDuplexModeBothSides = 0, e_BookletDuplexModeFrontSideOnly = 1, e_BookletDuplexModeBackSideOnly = 2 }
 Enumeration for the values used to determine the duplex printing mode when printing a booklet. More...
 
enum  DuplexType { e_DuplexTypeSimplex = 0, e_DuplexTypeDuplexFlipLongEdge = 1, e_DuplexTypeDuplexFlipShortEdge = 2 }
 Enumeration for the values used to set the printing duplex mode. More...
 
enum  PageOrder { e_PageOrderHorizontal = 0, e_PageOrderHorizontalReversed = 1, e_PageOrderVertical = 2 }
 Enumeration for the values used to determine how the multiple pages are laid out on the sheet. More...
 
enum  PrintContent { e_PrintContentDocument = 0, e_PrintContentDocAndAnnots = 1, e_PrintContentFormFieldsOnly = 2 }
 Enumeration for the values used to set the contents of the print job. More...
 
enum  PrintHandling {
  e_PrintHandlingNone = 0, e_PrintHandlingFitPaper = 1, e_PrintHandlingReducePaper = 2, e_PrintHandlingMultiplePages = 3,
  e_PrintHandlingTileLargePages = 4, e_PrintHandlingBooklet = 5
}
 Enumeration for the values used to determine how the multiple pages are laid out on the sheet. More...
 

Public Member Functions

 PrintParams ()
 Constructor.
 
 PrintParams (const PrintParams &print_params)
 Constructor, with another print parameters object. More...
 
PrintParamsoperator= (const PrintParams &print_params)
 Assign operator. More...
 

Public Attributes

BookletBinding binding
 The value determines the paper binding direction and the page arrange order. Please refer to values starting from PrintParams::e_BookletBindingRight and this should be one of these values.
 
BookletDuplexMode booklet_duplex_mode
 The value determines the duplex printing mode when printing a booklet.Please refer to values starting from PrintParams::e_BookletDuplexModeBothSides and this should be one of these values.
 
DuplexType duplex_type
 Sets the printing duplex mode to simplex, duplex long edge, or duplex short edge feed. Please refer to values starting from PrintParams::e_DuplexTypeSimplex and this should be one of these values.
 
PrintHandling handling
 The print handling type.Please refer to values starting from PrintParams::e_PrintHandlingNone and this should be one of these values.
 
bool is_print_as_image
 true means that pages should be printed as image.
 
bool is_print_auto_center
 true means that each page is automatically centered relative to the paper.
 
bool is_print_auto_rotate
 true means that automatically rotates each page to match the page orientation to the available paper area during Multiple Pages Per Sheet printing. false means not.
 
bool is_print_page_border
 A boolean value that if true, draws and prints a page boundary around each of the pages during Multiple Pages Per Sheet printing.
 
bool is_reverse
 true means that the printing order should be from parameter end to parameter start.
 
bool is_show_ui
 true means that a UI should be presented to the user to obtain printing information and confirm the action.
 
bool is_simulate_overprinting
 true means to do overprint preview when printing. false means not.
 
bool is_tile_label
 Label each page of tiled output. Labeled pages indicate row and column, file name, and print date.
 
int num_copies
 The number of copies to be printed.
 
int num_pages_h
 The number of pages to lay out in the horizontal direction when printing Multiple Pages Per Sheet.
 
int num_pages_v
 The number of pages to lay out in the vertical direction when printing Multiple Pages Per Sheet.
 
WString output_file_name
 The device-independent path for a file name to be used instead of sending the print job to the printer (Print to File).
 
PageOrder page_order
 The value determines how the multiple pages are laid out on the sheet. Please refer to values starting from PrintParams::e_PageOrderHorizontal and this should be one of these values.
 
common::Range page_range
 A range object to specify the page range for printing. All the indexes represented in this range would start from 0 and less than page count of the specified document.
 
PrintContent print_content
 Specif content for printing. Please refer to values starting from PrintParams::e_PrintContentDocument and this should be one of these values.
 
WString printer_name
 The default printer name for printing.
 
bool tile_mark
 true means to cut the page, and false means not.
 
float tile_overlap
 The number of points that tiled pages have in common.
 
float tile_scale
 The amount that tiled pages are scaled.
 

Detailed Description

This class represents print parameters.

Member Enumeration Documentation

◆ BookletBinding

Enumeration for the values used to determine the duplex printing mode when printing a booklet.

Values of this enumeration should be used alone.

Enumerator
e_BookletBindingRight 

Booklet Binding: Left-side binding for Western-style left-to-right reading direction. The paper is folded on the short side.

e_BookletBindingLeft 

Booklet Binding: Right-side binding for text with right-to-left reading direction or Japanese-style vertical writing. The paper is folded on the short side.

e_BookletBindingLeftTall 

Booklet Binding: Left-side binding for Western-style left-to-right reading direction. The paper is folded on the long side producing long and narrow pages.

e_BookletBindingRightTall 

Booklet Binding: Right-side binding for text with right-to-left reading direction or Japanese-style vertical writing. The paper is folded on the long side producing long and narrow pages.

◆ BookletDuplexMode

Enumeration for the values used to determine the duplex printing mode when printing a booklet.

Values of this enumeration should be used alone.

Enumerator
e_BookletDuplexModeBothSides 

Booklet Duplex Mode: automatically prints both sides of the paper.

e_BookletDuplexModeFrontSideOnly 

Booklet Duplex Mode: only prints all pages that appear on the front side of the paper.

e_BookletDuplexModeBackSideOnly 

Booklet Duplex Mode: only prints all pages that appear on the back side of the paper.

◆ DuplexType

Enumeration for the values used to set the printing duplex mode.

Values of this enumeration should be used alone.

Enumerator
e_DuplexTypeSimplex 

Duplex type: prints on one side of the paper.

e_DuplexTypeDuplexFlipLongEdge 

Duplex type: prints on both sides of the paper; the paper flips along the long edge.

e_DuplexTypeDuplexFlipShortEdge 

Duplex type: prints on both sides of the paper; the paper flips along the short edge.

◆ PageOrder

Enumeration for the values used to determine how the multiple pages are laid out on the sheet.

Values of this enumeration should be used alone.

Enumerator
e_PageOrderHorizontal 

Page Order type: pages are placed from left to right, from top to bottom.

e_PageOrderHorizontalReversed 

Page Order type: pages are placed from right to left, from top to bottom.

e_PageOrderVertical 

Page Order type: pages are placed from top to bottom, from left to right.

◆ PrintContent

Enumeration for the values used to set the contents of the print job.

Values of this enumeration should be used alone.

Enumerator
e_PrintContentDocument 

Print Content: print the document contents, not comments.

e_PrintContentDocAndAnnots 

Print Content: print the document contents and comments.

e_PrintContentFormFieldsOnly 

Print Content: print the contents of form fields only. Useful for printing onto pre-preprinted forms.

◆ PrintHandling

Enumeration for the values used to determine how the multiple pages are laid out on the sheet.

Values of this enumeration should be used alone.

Enumerator
e_PrintHandlingNone 

Print Handling: No page scaling is applied.

e_PrintHandlingFitPaper 

Print Handling: Pages are enlarged or shrunk to fit the printe's paper.

e_PrintHandlingReducePaper 

Print Handling: Small pages are printed small, and large pages are shrunk to fit on the printer's paper.

e_PrintHandlingMultiplePages 

Print Handling: Pages are rescaled to print multiple pages on each printer page.

e_PrintHandlingTileLargePages 

Print Handling: Small or normal pages are printed in the original size and large pages are printed on multiple sheets of paper.

e_PrintHandlingBooklet 

Print Handling: Prints multiple pages on the same sheet of paper in the order required to read correctly when folded.

Constructor & Destructor Documentation

◆ PrintParams()

foxit::PrintParams::PrintParams ( const PrintParams print_params)
inline

Constructor, with another print parameters object.

Parameters
[in]print_paramsAnother print parameters object.

Member Function Documentation

◆ operator=()

PrintParams& foxit::PrintParams::operator= ( const PrintParams print_params)
inline

Assign operator.

Parameters
[in]print_paramsAnother print parameters object.
Returns
Reference to current object itself.