Loading...
Searching...
No Matches
pdftron::PDF::PrinterMode Class Reference

`#include <Print.h>`

## Public Types
enum | PaperSize { e_custom = 0 , e_letter , e_letter_small , e_tabloid , e_ledger , e_legal , e_statement , e_executive , e_a3 , e_a4 , e_a4_small , e_a5 , e_b4_jis , e_b5_jis , e_folio , e_quarto , e_10x14 , e_11x17 , e_note , e_envelope_9 , e_envelope_10 , e_envelope_11 , e_envelope_12 , e_envelope_14 , e_c_size_sheet , e_d_size_sheet , e_e_size_sheet , e_envelope_dl , e_envelope_c5 , e_envelope_c3 , e_envelope_c4 , e_envelope_c6 , e_envelope_c65 , e_envelope_b4 , e_envelope_b5 , e_envelope_b6 , e_envelope_italy , e_envelope_monarch , e_6_3_quarters_envelope , e_us_std_fanfold , e_german_std_fanfold , e_german_legal_fanfold , e_b4_iso , e_japanese_postcard , e_9x11 , e_10x11 , e_15x11 , e_envelope_invite , e_reserved_48 , e_reserved_49 , e_letter_extra , e_legal_extra , e_tabloid_extra , e_a4_extra , e_letter_transverse , e_a4_transverse , e_letter_extra_transverse , e_supera_supera_a4 , e_Superb_Superb_a3 , e_letter_plus , e_a4_plus , e_a5_transverse , e_b5_jis_transverse , e_a3_extra , e_a5_extra , e_b5_iso_extra , e_a2 , e_a3_transverse , e_a3_extra_transverse , e_japanese_double_postcard , e_a6 , e_japanese_envelope_kaku_2 , e_japanese_envelope_kaku_3 , e_japanese_envelope_chou_3 , e_japanese_envelope_chou_4 , e_letter_rotated , e_a3_rotated , e_a4_rotated , e_a5_rotated , e_b4_jis_rotated , e_b5_jis_rotated , e_japanese_postcard_rotated , e_double_japanese_postcard_rotated , e_a6_rotated , e_japanese_envelope_kaku_2_rotated , e_japanese_envelope_kaku_3_rotated , e_japanese_envelope_chou_3_rotated , e_japanese_envelope_chou_4_rotated , e_b6_jis , e_b6_jis_rotated , e_12x11 , e_japanese_envelope_you_4 , e_japanese_envelope_you_4_rotated , e_prc_16k , e_prc_32k , e_prc_32k_big , e_prc_envelop_1 , e_prc_envelop_2 , e_prc_envelop_3 , e_prc_envelop_4 , e_prc_envelop_5 , e_prc_envelop_6 , e_prc_envelop_7 , e_prc_envelop_8 , e_prc_envelop_9 , e_prc_envelop_10 , e_prc_16k_rotated , e_prc_32k_rotated , e_prc_32k_big__rotated , e_prc_envelop_1_rotated , e_prc_envelop_2_rotated , e_prc_envelop_3_rotated , e_prc_envelop_4_rotated , e_prc_envelop_5_rotated , e_prc_envelop_6_rotated , e_prc_envelop_7_rotated , e_prc_envelop_8_rotated , e_prc_envelop_9_rotated , e_prc_envelop_10_rotated }
enum | DuplexMode { e_Duplex_Auto = 0 , e_Duplex_None = 1 , e_Duplex_LongSide = 2 , e_Duplex_ShortSide = 3 }
| Enumerated values for specifying how the printed pages are flipped when duplexing. More...
enum | OutputQuality { e_OutputQuality_Draft = -1 , e_OutputQuality_Low = -2 , e_OutputQuality_Medium = -3 , e_OutputQuality_High = -4 }
| Enumerated values for specifying the quality of the printing. More...
enum | OutputColor { e_OutputColor_Color = 0 , e_OutputColor_Grayscale = 1 , e_OutputColor_Monochrome = 2 }
| Enumerated values for specifying the color mode for printing. More...
enum | Orientation { e_Orientation_Portrait = 0 , e_Orientation_Landscape = 1 }
| Enumerated values for specifying the orientation of output pages. More...
enum | ScaleType { e_ScaleType_None = 0 , e_ScaleType_FitToOutputPage = 1 , e_ScaleType_ReduceToOutputPage = 2 }
| Enumerated values for specifying the scaling of document pages. More...
enum | NUp { e_NUp_1_1 = 0 , e_NUp_2_1 = 1 , e_NUp_2_2 = 2 , e_NUp_3_2 = 3 , e_NUp_3_3 = 4 , e_NUp_4_4 = 5 }
enum | NUpPageOrder { e_PageOrder_LeftToRightThenTopToBottom = 0 , e_PageOrder_RightToLeftThenTopToBottom = 1 , e_PageOrder_TopToBottomThenLeftToRight = 2 , e_PageOrder_BottomToTopThenLeftToRight = 3 }
enum | PrintContentTypes { e_PrintContent_DocumentOnly = 0 , e_PrintContent_DocumentAndAnnotations = 1 , e_PrintContent_DocumentAnnotationsAndComments = 2 }
| Enumerated values for specifying the document content to print. More...

## Public Member Functions
| PrinterMode ()
| ~PrinterMode ()
void | SetAutoCenter (bool autoCenter)
void | SetAutoRotate (bool autoRotate)
void | SetCollation (bool collation)
void | SetCopyCount (int copyCount)
void | SetDPI (int dpi)
void | SetDuplexing (DuplexMode mode)
void | SetNUp (NUp nup, NUpPageOrder pageOrder=e_PageOrder_LeftToRightThenTopToBottom)
void | SetNUp (unsigned int x, unsigned int y, NUpPageOrder pageOrder=e_PageOrder_LeftToRightThenTopToBottom)
void | SetOrientation (Orientation orientation)
void | SetOutputAnnot (PrintContentTypes printContent)
void | SetOutputColor (OutputColor color)
void | SetOutputQuality (OutputQuality quality)
void | SetOutputPageBorder (bool printBorder)
void | SetPaperSize (const Rect &size=Rect(0, 0, 612, 791))
void | SetPaperSize (pdftron::PDF::PrinterMode::PaperSize paperSize)
void | SetScale (double scale)
void | SetScaleType (ScaleType scaleType)
void | SetUseRleImageCompression (bool useRleImageCompression)

## Detailed Description

PrinterMode is a utility class used to represent options for printing.

Definition at line 100 of file Print.h.

## Member Enumeration Documentation

## ◆ DuplexMode

enum pdftron::PDF::PrinterMode::DuplexMode

Enumerated values for specifying how the printed pages are flipped when duplexing.

Enumerator
e_Duplex_Auto | use the current printer setting
e_Duplex_None | single-sided printing
e_Duplex_LongSide | flip the paper along the long side
e_Duplex_ShortSide | flip the paper along the short side

Definition at line 229 of file Print.h.

## ◆ NUp

enum pdftron::PDF::PrinterMode::NUp

Enumerated values for specifying the layout of multiple document pages onto output pages

Enumerator
e_NUp_1_1 | 1 document page to 1 output page
e_NUp_2_1 | 2 document pages to 1 output page
e_NUp_2_2 | 2 by 2 document pages to 1 output page
e_NUp_3_2 | 3 by 2 document pages to 1 output page
e_NUp_3_3 | 3 by 3 document pages to 1 output page
e_NUp_4_4 | 4 by 4 document pages to 1 output page

Definition at line 267 of file Print.h.

## ◆ NUpPageOrder

enum pdftron::PDF::PrinterMode::NUpPageOrder

Enumerated values for specifying the ordering of document pages onto output pages

Enumerator
e_PageOrder_LeftToRightThenTopToBottom |
e_PageOrder_RightToLeftThenTopToBottom |
e_PageOrder_TopToBottomThenLeftToRight |
e_PageOrder_BottomToTopThenLeftToRight |

Definition at line 278 of file Print.h.

## ◆ Orientation

enum pdftron::PDF::PrinterMode::Orientation

Enumerated values for specifying the orientation of output pages.

Enumerator
e_Orientation_Portrait | taller than wide
e_Orientation_Landscape | wider than tall

Definition at line 252 of file Print.h.

## ◆ OutputColor

enum pdftron::PDF::PrinterMode::OutputColor

Enumerated values for specifying the color mode for printing.

Enumerator
e_OutputColor_Color | 24bpp
e_OutputColor_Grayscale | 8bpp
e_OutputColor_Monochrome | single color (1bpp)

Definition at line 245 of file Print.h.

## ◆ OutputQuality

enum pdftron::PDF::PrinterMode::OutputQuality

Enumerated values for specifying the quality of the printing.

Enumerator
e_OutputQuality_Draft | printer draft mode
e_OutputQuality_Low | printer low quality mode
e_OutputQuality_Medium | printer medium quality mode
e_OutputQuality_High | printer high quality mode

Definition at line 237 of file Print.h.

## ◆ PaperSize

enum pdftron::PDF::PrinterMode::PaperSize

Paper sizes

Enumerator
e_custom |
e_letter |
e_letter_small |
e_tabloid |
e_ledger |
e_legal |
e_statement |
e_executive |
e_a3 |
e_a4 |
e_a4_small |
e_a5 |
e_b4_jis |
e_b5_jis |
e_folio |
e_quarto |
e_10x14 |
e_11x17 |
e_note |
e_envelope_9 |
e_envelope_10 |
e_envelope_11 |
e_envelope_12 |
e_envelope_14 |
e_c_size_sheet |
e_d_size_sheet |
e_e_size_sheet |
e_envelope_dl |
e_envelope_c5 |
e_envelope_c3 |
e_envelope_c4 |
e_envelope_c6 |
e_envelope_c65 |
e_envelope_b4 |
e_envelope_b5 |
e_envelope_b6 |
e_envelope_italy |
e_envelope_monarch |
e_6_3_quarters_envelope |
e_us_std_fanfold |
e_german_std_fanfold |
e_german_legal_fanfold |
e_b4_iso |
e_japanese_postcard |
e_9x11 |
e_10x11 |
e_15x11 |
e_envelope_invite |
e_reserved_48 |
e_reserved_49 |
e_letter_extra |
e_legal_extra |
e_tabloid_extra |
e_a4_extra |
e_letter_transverse |
e_a4_transverse |
e_letter_extra_transverse |
e_supera_supera_a4 |
e_Superb_Superb_a3 |
e_letter_plus |
e_a4_plus |
e_a5_transverse |
e_b5_jis_transverse |
e_a3_extra |
e_a5_extra |
e_b5_iso_extra |
e_a2 |
e_a3_transverse |
e_a3_extra_transverse |
e_japanese_double_postcard |
e_a6 |
e_japanese_envelope_kaku_2 |
e_japanese_envelope_kaku_3 |
e_japanese_envelope_chou_3 |
e_japanese_envelope_chou_4 |
e_letter_rotated |
e_a3_rotated |
e_a4_rotated |
e_a5_rotated |
e_b4_jis_rotated |
e_b5_jis_rotated |
e_japanese_postcard_rotated |
e_double_japanese_postcard_rotated |
e_a6_rotated |
e_japanese_envelope_kaku_2_rotated |
e_japanese_envelope_kaku_3_rotated |
e_japanese_envelope_chou_3_rotated |
e_japanese_envelope_chou_4_rotated |
e_b6_jis |
e_b6_jis_rotated |
e_12x11 |
e_japanese_envelope_you_4 |
e_japanese_envelope_you_4_rotated |
e_prc_16k |
e_prc_32k |
e_prc_32k_big |
e_prc_envelop_1 |
e_prc_envelop_2 |
e_prc_envelop_3 |
e_prc_envelop_4 |
e_prc_envelop_5 |
e_prc_envelop_6 |
e_prc_envelop_7 |
e_prc_envelop_8 |
e_prc_envelop_9 |
e_prc_envelop_10 |
e_prc_16k_rotated |
e_prc_32k_rotated |
e_prc_32k_big__rotated |
e_prc_envelop_1_rotated |
e_prc_envelop_2_rotated |
e_prc_envelop_3_rotated |
e_prc_envelop_4_rotated |
e_prc_envelop_5_rotated |
e_prc_envelop_6_rotated |
e_prc_envelop_7_rotated |
e_prc_envelop_8_rotated |
e_prc_envelop_9_rotated |
e_prc_envelop_10_rotated |

Definition at line 106 of file Print.h.

## ◆ PrintContentTypes

enum pdftron::PDF::PrinterMode::PrintContentTypes

Enumerated values for specifying the document content to print.

Enumerator
e_PrintContent_DocumentOnly |
e_PrintContent_DocumentAndAnnotations |
e_PrintContent_DocumentAnnotationsAndComments |

Definition at line 286 of file Print.h.

## ◆ ScaleType

enum pdftron::PDF::PrinterMode::ScaleType

Enumerated values for specifying the scaling of document pages.

Enumerator
e_ScaleType_None | no scaling
e_ScaleType_FitToOutputPage | fit to the output page
e_ScaleType_ReduceToOutputPage | shrink to fit the output page

Definition at line 259 of file Print.h.

## Constructor & Destructor Documentation

## ◆ PrinterMode()

pdftron::PDF::PrinterMode::PrinterMode | ( |  | ) |

## ◆ ~PrinterMode()

pdftron::PDF::PrinterMode::~PrinterMode | ( |  | ) |

## Member Function Documentation

## ◆ SetAutoCenter()

void pdftron::PDF::PrinterMode::SetAutoCenter | ( | bool | autoCenter | ) |

Set automatic centering of document pages onto the output pages

Parameters

  autoCenter | if true will center document pages onto the output pages. Default is true.

## ◆ SetAutoRotate()

void pdftron::PDF::PrinterMode::SetAutoRotate | ( | bool | autoRotate | ) |

Set automatic rotation of document pages to best fit the output pages

Parameters

  autoRotate | if true will rotate document pages onto the output pages. Default is true.

## ◆ SetCollation()

void pdftron::PDF::PrinterMode::SetCollation | ( | bool | collation | ) |

Set the collation of the printing, useful for multiple copies

Parameters

  collation | if true, pages of copies will be printed 1, 2, 3. if false, then pages of copies will be printed 1, 1, 1, ..., 2, 2, 2, ... Default is true.

## ◆ SetCopyCount()

void pdftron::PDF::PrinterMode::SetCopyCount | ( | int | copyCount | ) |

Set the number of copies to be printed

Parameters

  copyCount | the number of copies to be printed, must be greater than zero. Default is 1.

## ◆ SetDPI()

void pdftron::PDF::PrinterMode::SetDPI | ( | int | dpi | ) |

Set the DPI (dots per inch) of the printing

Parameters

  dpi,300 | is typically laser printer output, 96 dpi is LCD screen the larger this value the larger the file sent to the printer and the finer the document features that can be resolved. Default is 300.

## ◆ SetDuplexing()

void pdftron::PDF::PrinterMode::SetDuplexing | ( | DuplexMode | mode | ) |

Set the duplexing mode

Parameters

  mode | one of {e_Duplex_Auto, e_Duplex_None, e_Duplex_LongSide, e_Duplex_ShortSide}. Default is e_Duplex_Auto.

## ◆ SetNUp() [1/2]

void pdftron::PDF::PrinterMode::SetNUp | ( | NUp | nup,
|  | NUpPageOrder | pageOrder = e_PageOrder_LeftToRightThenTopToBottom )

Set the number of document pages to place on the output pages across and vertically. Pages will be automatically rotated to best fit the page.

Parameters

  nup | one of {e_NUp_1_1, e_NUp_2_1, e_NUp_2_2, e_NUp_3_2, e_NUp_3_3, e_NUp_4_4}. Default is e_NUp_1_1.
  pageOrder | order of document pages across and down output page. Default is e_PageOrder_LeftToRightThenTopToBottom.

## ◆ SetNUp() [2/2]

void pdftron::PDF::PrinterMode::SetNUp | ( | unsigned int | x,
|  | unsigned int | y,
|  | NUpPageOrder | pageOrder = e_PageOrder_LeftToRightThenTopToBottom )

Set the number of document pages to place on the output pages across and vertically. Pages will be automatically rotated to best fit the page.

Typical values: (2,1) 2-up; (2,2) 4 per page, etc

Parameters

  x | number of document pages across. Default is 1.
  y | number of document pages down. Default is 1.
  pageOrder | order of document pages across and down output page Default is e_PageOrder_LeftToRightThenTopToBottom.

## ◆ SetOrientation()

void pdftron::PDF::PrinterMode::SetOrientation | ( | Orientation | orientation | ) |

Set the orientation of the output document

Parameters

  orientation | {e_Orientation_Portrait, e_Orientation_Landscape} Default is e_Orientation_Portrait.

## ◆ SetOutputAnnot()

void pdftron::PDF::PrinterMode::SetOutputAnnot | ( | PrintContentTypes | printContent | ) |

Set the printing of annotations

Parameters

  printContent | one of {e_PrintContent_DocumentOnly, e_PrintContent_DocumentAndAnnotations}. Default is e_PrintContent_DocumentAndAnnotations.

## ◆ SetOutputColor()

void pdftron::PDF::PrinterMode::SetOutputColor | ( | OutputColor | color | ) |

Set the color output of the printing

Parameters

  color | one of {e_OutputColor_Color, e_OutputColor_Grayscale, e_OutputColor_Monochrome}. Default is e_OutputColor_Color.

Note
  If the XPS print path is being used, then the printer spooler file will ignore the grayscale option and be in full color. The printer driver will then perform any color conversions necessary.

## ◆ SetOutputPageBorder()

void pdftron::PDF::PrinterMode::SetOutputPageBorder | ( | bool | printBorder | ) |

Set the printing of page borders, helpful when printing multiple document pages per output page

Parameters

  printBorder | if true will add a thin frame around each page border. Default is false.

## ◆ SetOutputQuality()

void pdftron::PDF::PrinterMode::SetOutputQuality | ( | OutputQuality | quality | ) |

Set the quality of the printing. Overridden if SetDPI is called.

Parameters

  quality | one of {e_OutputQuality_Draft, e_OutputQuality_Low, e_OutputQuality_Medium, e_OutputQuality_High}. Default is to use DPI of 300.

## ◆ SetPaperSize() [1/2]

void pdftron::PDF::PrinterMode::SetPaperSize | ( | const Rect & | size = Rect(0, 0, 612, 791) | ) |

Set the output printer paper size (assumed to be correct)

Parameters

  size | the size of the output paper size in points (72 points = 1 inch). Default is US Letter or Rect(0, 0, 612, 792)

## ◆ SetPaperSize() [2/2]

void pdftron::PDF::PrinterMode::SetPaperSize | ( | pdftron::PDF::PrinterMode::PaperSize | paperSize | ) |

Set the output printer paper size

Parameters

  paperSize | standard paper size enumerator

## ◆ SetScale()

void pdftron::PDF::PrinterMode::SetScale | ( | double | scale | ) |

Set the scaling of the document pages to the output pages. Causes SetScaleType(e_ScaleType_CustomScale) to be set.

Parameters

  scale | to apply to document pages. 1.0 is no scale, greater than 1.0 increases document page sizes, less than 1.0 reduces document pages sizes on output pages. Default is 1.0

## ◆ SetScaleType()

void pdftron::PDF::PrinterMode::SetScaleType | ( | ScaleType | scaleType | ) |

Set the scaling of the document page to the output pages

Parameters

  scaleType | one of {e_ScaleType_None, e_ScaleType_FitToOutputPage, e_ScaleType_ReduceToOutputPage}. Default is e_ScaleType_None.

## ◆ SetUseRleImageCompression()

void pdftron::PDF::PrinterMode::SetUseRleImageCompression | ( | bool | useRleImageCompression | ) |

Set whether RLE image compression is used for printing bitmaps

Parameters

  useRleImageCompression | if true, printer spool file will be reduced. However, some printers do not support this type of image compression and will produce blank pages. Default is false

The documentation for this class was generated from the following file:

- PDF/Print.h