| 
 
 IPrint_KC Interface
PrintViewGetDefaultsPrintPrintToFileGet2DViewStartDocumentEndDocument IPrint_KC provides access to printing of 
two dimensional views. IPrint_KC can 
be queried from IView via: DG Kernel >
GetView
> IView
> IPrint_KC See also Interface List 
 HRESULT PrintView(EPageOrientation orientation) Parameters orientation - [in] Orientation of 
the printed page 
  Remarks: 
 The methods prints the current DG Kernel window with paper orientation 
specified by the parameter. If orientation   is 
eOrientAuto the view 
will be printed with portrait orientation if height of the window is greater than its width 
and with landscape orientation otherwise. 
 HRESULT GetDefaults(PrintContext_KC* options) Parameters options - [out] 
PrintContext_KC 
structure to be initialized 
  Remarks: 
 The methods acts as a constructor for 
PrintContext_KC 
structure. It initializes its members with default values. 
 HRESULT Print(PrintContext_KC* options) Parameters options - [in] 
PrintContext_KC 
additional options for printing. See remarks. 
  Remarks: 
 The method prints the view with the specified options. validOrientation, validPaperSize, validMargin and validScale determine 
whether the correspondent parameters have valid data and should not be ignored. orientation - Orientation of the printed page. If orientation   is
eOrientAuto the 
view will with portrait orientation if height of the window is greater than its 
width and with landscape otherwise paperSize - Selection of the paper size marginHorizontal, marginVertical - Margins for the printout. 
Must be greater than 0 and less than 1. Used only if validMargin  
is true and scale  is negative or zero.. This option allows 
controlling amount of white space around the drawing. The actual margins are calculated as next: Drawing size is calculated 
as the longest side if the minimal bounding rectangle containing the drawing. 
Margin on the left hand edge will be equal to marginHorizontal*(Drawing 
size). Margin on the right hand edge will be equal to the margin on the 
left hand side. Analogously the vertical margin will be calculated as marginVertical*(Drawing 
size). Margins are ignored when scale  is positive even if validMargin  
is true scale - If scale is negative the image will be fit with maximal size into the 
page. Otherwise the model will be printed with the specified scale. For example 
if scale is 1.0  lengths 
measured on paper will coincide with lengths specified in the model.. If scale 
is 2.0 the printed model will have double size on paper. There are no warnings 
when scaled image does not fully fit the page. The image will be printed clipped 
in this case. 
 
 HRESULT PrintToFile(char* szFilePath, float aspect, PrintContext_KC* 
options) Parameters szFilePath - [in] Full path of the 
file with an .emf or .wmf extension to save the drawing to  aspect - Aspect ratio of the rectangle (width 
divided by height) where 
the emf file will be displayed or a non-positive number to use default. See 
remarks. options - [in] 
PrintContext_KC 
additional options for printing. See remarks. for Print method above. 
  Remarks: 
 This method is available only in 2D mode. It saves the current 2D drawing to 
a Extended Windows Metafile or Windows Metafile. The drawing is positioned and scaled to fit best a 
rectangle with aspect ratio aspect inside a document. If aspect is zero or negative it will be calculated 
automatically as aspect ration of the minimal rectangle, containing the drawing. 
 HRESULT Get2DView(I2DView_KC 
**view) Parameters view - [out, retval] The returned
I2DView_KC
interface implemented by 
printing view 
  Remarks: 
 This method is available only in 2D mode. It gives access to
printing view 
 HRESULT StartDocument) 
  Remarks: 
 Call before starting a sequence of PrintToFile() calls to optimize 
performance. The method allocates and cashes some additional resources used in 
consequent calls to PrintToFile(). 
 HRESULT EndDocument) 
  Remarks: 
 Call in the end of a sequence of PrintToFile() 
calls to free resources allocates with a cal to StartDocument() 
 |