All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
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

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.

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.

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.

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.

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.

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.

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.

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.

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

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

Member Function Documentation

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

Set automatic centering of document pages onto the output pages

Parameters
autoCenterif true will center document pages onto the output pages. Default is true.
void pdftron::PDF::PrinterMode::SetAutoRotate ( bool  autoRotate)

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

Parameters
autoRotateif true will rotate document pages onto the output pages. Default is true.
void pdftron::PDF::PrinterMode::SetCollation ( bool  collation)

Set the collation of the printing, useful for multiple copies

Parameters
collationif 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.
void pdftron::PDF::PrinterMode::SetCopyCount ( int  copyCount)

Set the number of copies to be printed

Parameters
copyCountthe number of copies to be printed, must be greater than zero. Default is 1.
void pdftron::PDF::PrinterMode::SetDPI ( int  dpi)

Set the DPI (dots per inch) of the printing

Parameters
dpi,300is 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.
void pdftron::PDF::PrinterMode::SetDuplexing ( DuplexMode  mode)

Set the duplexing mode

Parameters
modeone of {e_Duplex_Auto, e_Duplex_None, e_Duplex_LongSide, e_Duplex_ShortSide}. Default is e_Duplex_Auto.
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
nupone 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.
pageOrderorder of document pages across and down output page. Default is e_PageOrder_LeftToRightThenTopToBottom.
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
xnumber of document pages across. Default is 1.
ynumber of document pages down. Default is 1.
pageOrderorder of document pages across and down output page Default is e_PageOrder_LeftToRightThenTopToBottom.
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.
void pdftron::PDF::PrinterMode::SetOutputAnnot ( PrintContentTypes  printContent)

Set the printing of annotations

Parameters
printContentone of {e_PrintContent_DocumentOnly, e_PrintContent_DocumentAndAnnotations}. Default is e_PrintContent_DocumentAndAnnotations.
void pdftron::PDF::PrinterMode::SetOutputColor ( OutputColor  color)

Set the color output of the printing

Parameters
colorone 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.
void pdftron::PDF::PrinterMode::SetOutputPageBorder ( bool  printBorder)

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

Parameters
printBorderif true will add a thin frame around each page border. Default is false.
void pdftron::PDF::PrinterMode::SetOutputQuality ( OutputQuality  quality)

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

Parameters
qualityone of {e_OutputQuality_Draft, e_OutputQuality_Low, e_OutputQuality_Medium, e_OutputQuality_High}. Default is to use DPI of 300.
void pdftron::PDF::PrinterMode::SetPaperSize ( const Rect size = Rect(0, 0, 612, 791))

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

Parameters
sizethe size of the output paper size in points (72 points = 1 inch). Default is US Letter or Rect(0, 0, 612, 792)
void pdftron::PDF::PrinterMode::SetPaperSize ( pdftron::PDF::PrinterMode::PaperSize  paperSize)

Set the output printer paper size

Parameters
paperSizestandard paper size enumerator
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
scaleto 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
void pdftron::PDF::PrinterMode::SetScaleType ( ScaleType  scaleType)

Set the scaling of the document page to the output pages

Parameters
scaleTypeone of {e_ScaleType_None, e_ScaleType_FitToOutputPage, e_ScaleType_ReduceToOutputPage}. Default is e_ScaleType_None.
void pdftron::PDF::PrinterMode::SetUseRleImageCompression ( bool  useRleImageCompression)

Set whether RLE image compression is used for printing bitmaps

Parameters
useRleImageCompressionif 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: