Skip to main content
View as Markdown

IPCB_PrinterOptions interface

The printer and plotter settings of a PCB document in the PCB Editor, returned by IPCB_Board.PrinterOptions.

public interface IPCB_PrinterOptions : IPCB_AbstractOptions

Namespace: PCB · Assembly: Altium.SDK.Interfaces

Inherits: IPCB_AbstractOptions

Remarks​

The interface extends IPCB_AbstractOptions. The settings form two groups: general options (device, scaling, plot modes, pad annotation and pen-plotter settings) and per-layer composite options (CompositePlotLayers, CompositePlotPens, CompositePlotMonoLayers, CompositePlotColorLayers). Each group can be written to and read from a parameter string.

Export_ToParameters writes every setting as a parameter; Import_FromParameters reads them. Both handle the two groups; Import_FromParameters_Version3 and Export_ToParameters_Version3 handle the general options and the per-layer options in the version 3 layer numbering.

Properties​

PropertyTypeAccessDescription
BatchTypeTPrinterBatchget; setThe print batch mode, plot per sheet (TPrinterBatch.ePlotPerSheet) or panelize (TPrinterBatch.ePanelize).
cBorderSizeintget; setThe border size of the printout, in internal units (10,000 per mil).
CompositePlotColorLayersuintget; setThe colour used for a layer in a colour composite plot.
CompositePlotLayersboolget; setWhether a layer is included in composite plots.
CompositePlotMonoLayersuintget; setThe colour used for a layer in a monochrome composite plot.
CompositePlotPensintget; setThe pen-plotter pen number assigned to a layer.
CompositeTypeTPrinterCompositeget; setThe composite print mode, colour (TPrinterComposite.eColorComposite) or monochrome (TPrinterComposite.eMonoComposite).
Devicestringget; setThe name of the target printer device.
Driverstringget; setThe name of the printer driver.
OutPutstringget; setThe printer output string.
OutputDriverTypeTOutputDriverTypeget; setThe type of output driver.
PlotModeTDrawModeget; setThe draw mode (full, draft or hidden) used to plot objects of a given kind.
PlotPadNetsboolget; setWhether pad net names are printed.
PlotPadNumbersboolget; setWhether pad numbers are printed.
PlotterLanguageTPlotterLanguageget; setThe command language of the pen plotter, HPGL (TPlotterLanguage.ePlotterLanguageHPGL) or DMPL (TPlotterLanguage.ePlotterLanguageDMPL).
PlotterOutputPortTOutputPortget; setThe port or file the pen plotter output is sent to.
PlotterPensPlotterPenget; setThe speed and thickness of a pen-plotter pen.
PlotterScaledoubleget; setThe scale factor of pen-plotter output.
PlotterShowHolesboolget; setWhether holes are drawn on pen-plotter output.
PlotterUseSoftwareArcsboolget; setWhether arcs on pen-plotter output are drawn in software.
PlotterWaitBetweenSheetsboolget; setWhether the pen plotter pauses between sheets.
PlotterXCorrectdoubleget; setThe horizontal correction factor of pen-plotter output.
PlotterXOffsetintget; setThe horizontal offset of pen-plotter output, in internal units (10,000 per mil).
PlotterYCorrectdoubleget; setThe vertical correction factor of pen-plotter output.
PlotterYOffsetintget; setThe vertical offset of pen-plotter output, in internal units (10,000 per mil).
Scaledoubleget; setThe print scale factor, used when ScaleToFitPage is false.
ScaleToFitPageboolget; setWhether the printout is scaled to fit the page instead of using Scale.
ShowHolesboolget; setWhether pad and via holes are shown on printed output.
UsePrinterFontsboolget; setWhether text is printed with the printer's fonts.
UseSoftwareArcsboolget; setWhether arcs on printed output are drawn in software.
XCorrectdoubleget; setThe horizontal scale correction factor of the printer.
YCorrectdoubleget; setThe vertical scale correction factor of the printer.

BatchType​

The print batch mode, plot per sheet (TPrinterBatch.ePlotPerSheet) or panelize (TPrinterBatch.ePanelize).

TPrinterBatch GetState_BatchType();
void SetState_BatchType(TPrinterBatch argValue);

Type: TPrinterBatch · Access: read/write

The accessors are extension methods of IPCB_PrinterOptionsHelper (using PCB;).

cBorderSize​

The border size of the printout, in internal units (10,000 per mil).

int GetState_cBorderSize();
void SetState_cBorderSize(int argValue);

Type: int · Access: read/write

CompositePlotColorLayers​

The colour used for a layer in a colour composite plot.

uint GetState_CompositePlotColorLayers(TV6_Layer argL);
void SetState_CompositePlotColorLayers(TV6_Layer argL, uint argValue);

Type: uint · Access: read/write · Index: argL (TV6_Layer): The layer.

The accessors are extension methods of IPCB_PrinterOptionsHelper (using PCB;).

CompositePlotLayers​

Whether a layer is included in composite plots.

bool GetState_CompositePlotLayers(TV6_Layer argL);
void SetState_CompositePlotLayers(TV6_Layer argL, bool argValue);

Type: bool · Access: read/write · Index: argL (TV6_Layer): The layer.

The accessors are extension methods of IPCB_PrinterOptionsHelper (using PCB;).

CompositePlotMonoLayers​

The colour used for a layer in a monochrome composite plot.

uint GetState_CompositePlotMonoLayers(TV6_Layer argL);
void SetState_CompositePlotMonoLayers(TV6_Layer argL, uint argValue);

Type: uint · Access: read/write · Index: argL (TV6_Layer): The layer.

The accessors are extension methods of IPCB_PrinterOptionsHelper (using PCB;).

CompositePlotPens​

The pen-plotter pen number assigned to a layer.

int GetState_CompositePlotPens(TV6_Layer argL);
void SetState_CompositePlotPens(TV6_Layer argL, int argValue);

Type: int · Access: read/write · Index: argL (TV6_Layer): The layer.

The accessors are extension methods of IPCB_PrinterOptionsHelper (using PCB;).

CompositeType​

The composite print mode, colour (TPrinterComposite.eColorComposite) or monochrome (TPrinterComposite.eMonoComposite).

TPrinterComposite GetState_CompositeType();
void SetState_CompositeType(TPrinterComposite argValue);

Type: TPrinterComposite · Access: read/write

The accessors are extension methods of IPCB_PrinterOptionsHelper (using PCB;).

Device​

The name of the target printer device.

string GetState_Device();
void SetState_Device(string argValue);

Type: string · Access: read/write

Driver​

The name of the printer driver.

string GetState_Driver();
void SetState_Driver(string argValue);

Type: string · Access: read/write

OutPut​

The printer output string.

string GetState_OutPut();
void SetState_OutPut(string argValue);

Type: string · Access: read/write

OutputDriverType​

The type of output driver.

TOutputDriverType GetState_OutputDriverType();
void SetState_OutputDriverType(TOutputDriverType argValue);

Type: TOutputDriverType · Access: read/write

The accessors are extension methods of IPCB_PrinterOptionsHelper (using PCB;).

PlotMode​

The draw mode (full, draft or hidden) used to plot objects of a given kind.

TDrawMode GetState_PlotMode(TObjectId argOId);
void SetState_PlotMode(TObjectId argOId, TDrawMode argValue);

Type: TDrawMode · Access: read/write · Index: argOId (TObjectId): The object kind.

The accessors are extension methods of IPCB_PrinterOptionsHelper (using PCB;).

PlotPadNets​

Whether pad net names are printed.

bool GetState_PlotPadNets();
void SetState_PlotPadNets(bool argValue);

Type: bool · Access: read/write

PlotPadNumbers​

Whether pad numbers are printed.

bool GetState_PlotPadNumbers();
void SetState_PlotPadNumbers(bool argValue);

Type: bool · Access: read/write

PlotterLanguage​

The command language of the pen plotter, HPGL (TPlotterLanguage.ePlotterLanguageHPGL) or DMPL (TPlotterLanguage.ePlotterLanguageDMPL).

TPlotterLanguage GetState_PlotterLanguage();
void SetState_PlotterLanguage(TPlotterLanguage argValue);

Type: TPlotterLanguage · Access: read/write

The accessors are extension methods of IPCB_PrinterOptionsHelper (using PCB;).

PlotterOutputPort​

The port or file the pen plotter output is sent to.

TOutputPort GetState_PlotterOutputPort();
void SetState_PlotterOutputPort(TOutputPort argValue);

Type: TOutputPort · Access: read/write

The accessors are extension methods of IPCB_PrinterOptionsHelper (using PCB;).

PlotterPens​

The speed and thickness of a pen-plotter pen.

PlotterPen GetState_PlotterPens(int argPen);
void SetState_PlotterPens(int argPen, PlotterPen argValue);

Type: PlotterPen · Access: read/write · Index: argPen (int): The pen number.

The accessors are extension methods of IPCB_PrinterOptionsHelper (using PCB;).

The pen's Thickness is in internal units (10,000 per mil).

PlotterScale​

The scale factor of pen-plotter output.

double GetState_PlotterScale();
void SetState_PlotterScale(double argValue);

Type: double · Access: read/write

PlotterShowHoles​

Whether holes are drawn on pen-plotter output.

bool GetState_PlotterShowHoles();
void SetState_PlotterShowHoles(bool argValue);

Type: bool · Access: read/write

PlotterUseSoftwareArcs​

Whether arcs on pen-plotter output are drawn in software.

bool GetState_PlotterUseSoftwareArcs();
void SetState_PlotterUseSoftwareArcs(bool argValue);

Type: bool · Access: read/write

PlotterWaitBetweenSheets​

Whether the pen plotter pauses between sheets.

bool GetState_PlotterWaitBetweenSheets();
void SetState_PlotterWaitBetweenSheets(bool argValue);

Type: bool · Access: read/write

PlotterXCorrect​

The horizontal correction factor of pen-plotter output.

double GetState_PlotterXCorrect();
void SetState_PlotterXCorrect(double argValue);

Type: double · Access: read/write

PlotterXOffset​

The horizontal offset of pen-plotter output, in internal units (10,000 per mil).

int GetState_PlotterXOffset();
void SetState_PlotterXOffset(int argValue);

Type: int · Access: read/write

PlotterYCorrect​

The vertical correction factor of pen-plotter output.

double GetState_PlotterYCorrect();
void SetState_PlotterYCorrect(double argValue);

Type: double · Access: read/write

PlotterYOffset​

The vertical offset of pen-plotter output, in internal units (10,000 per mil).

int GetState_PlotterYOffset();
void SetState_PlotterYOffset(int argValue);

Type: int · Access: read/write

Scale​

The print scale factor, used when ScaleToFitPage is false.

double GetState_Scale();
void SetState_Scale(double argValue);

Type: double · Access: read/write

The Print_Scale special string shows this value with two decimals, or SCALED TO FIT when ScaleToFitPage is true.

ScaleToFitPage​

Whether the printout is scaled to fit the page instead of using Scale.

bool GetState_ScaleToFitPage();
void SetState_ScaleToFitPage(bool argValue);

Type: bool · Access: read/write

ShowHoles​

Whether pad and via holes are shown on printed output.

bool GetState_ShowHoles();
void SetState_ShowHoles(bool argValue);

Type: bool · Access: read/write

UsePrinterFonts​

Whether text is printed with the printer's fonts.

bool GetState_UsePrinterFonts();
void SetState_UsePrinterFonts(bool argValue);

Type: bool · Access: read/write

UseSoftwareArcs​

Whether arcs on printed output are drawn in software.

bool GetState_UseSoftwareArcs();
void SetState_UseSoftwareArcs(bool argValue);

Type: bool · Access: read/write

XCorrect​

The horizontal scale correction factor of the printer.

double GetState_XCorrect();
void SetState_XCorrect(double argValue);

Type: double · Access: read/write

YCorrect​

The vertical scale correction factor of the printer.

double GetState_YCorrect();
void SetState_YCorrect(double argValue);

Type: double · Access: read/write

Methods​

MethodReturnsDescription
Export_ToParameters_GeneralOptionsvoidWrites the general printer settings to a parameter string.
Export_ToParameters_LayerOptionsvoidWrites the per-layer composite settings to a parameter string.
Export_ToParameters_LayerOptions_Version3voidWrites the per-layer composite settings to a parameter string in the version 3 layer numbering.
Import_FromParameters_GeneralOptionsvoidReads the general printer settings from a parameter string.
Import_FromParameters_LayerOptionsvoidReads the per-layer composite settings from a parameter string.
Import_FromParameters_LayerOptions_Version3voidReads the per-layer composite settings from a parameter string that uses the version 3 layer numbering.

Export_ToParameters_GeneralOptions​

Writes the general printer settings to a parameter string.

void Export_ToParameters_GeneralOptions(ref string argParameters);
ParameterTypePassingDescription
argParametersstringrefThe parameter string that receives the settings.

Returns: nothing (void)

Writes Device, Driver, OutPut, ShowHoles, ScaleToFitPage, UsePrinterFonts, UseSoftwareArcs, BatchType, CompositeType, cBorderSize, Scale, XCorrect, YCorrect, PlotPadNets, PlotPadNumbers, the pen-plotter settings including PlotterPens for pens 1 to 8, PlotMode and OutputDriverType. The per-layer settings are not written: use Export_ToParameters_LayerOptions.

Export_ToParameters_LayerOptions​

Writes the per-layer composite settings to a parameter string.

void Export_ToParameters_LayerOptions(ref string argParameters);
ParameterTypePassingDescription
argParametersstringrefThe parameter string that receives the settings.

Returns: nothing (void)

Writes CompositePlotLayers, CompositePlotPens, CompositePlotMonoLayers and CompositePlotColorLayers for every layer.

Export_ToParameters_LayerOptions_Version3​

Writes the per-layer composite settings to a parameter string in the version 3 layer numbering.

void Export_ToParameters_LayerOptions_Version3(ref string argParameters);
ParameterTypePassingDescription
argParametersstringrefThe parameter string that receives the settings.

Returns: nothing (void)

Writes the same settings as Export_ToParameters_LayerOptions, but numbers the layers as the version 3 format does; layers that have no version 3 equivalent are left out.

Import_FromParameters_GeneralOptions​

Reads the general printer settings from a parameter string.

void Import_FromParameters_GeneralOptions(TUnit argDisplayUnit, string argParameters);
void Import_FromParameters_GeneralOptions(int argDisplayUnit, string argParameters);
ParameterTypePassingDescription
argDisplayUnitTUnitvalueThe unit used to read coordinate values, such as cBorderSize, the plotter offsets and the pen thicknesses.
argParametersstringvalueThe parameter string to read.

Returns: nothing (void)

The first overload is an extension method of IPCB_PrinterOptionsHelper (using PCB;) with typed parameters; the second is declared by the interface.

Reads the settings that Export_ToParameters_GeneralOptions writes; the per-layer settings are read by Import_FromParameters_LayerOptions. Every object kind gets the draw mode of the first character of the PlotMode value, so per-kind draw modes written by Export_ToParameters_GeneralOptions do not survive a round trip.

Import_FromParameters_LayerOptions​

Reads the per-layer composite settings from a parameter string.

void Import_FromParameters_LayerOptions(string argParameters);
ParameterTypePassingDescription
argParametersstringvalueThe parameter string to read.

Returns: nothing (void)

Reads the settings that Export_ToParameters_LayerOptions writes. A layer whose setting is missing from the string keeps its current value.

Import_FromParameters_LayerOptions_Version3​

Reads the per-layer composite settings from a parameter string that uses the version 3 layer numbering.

void Import_FromParameters_LayerOptions_Version3(string argParameters);
ParameterTypePassingDescription
argParametersstringvalueThe parameter string to read.

Returns: nothing (void)

Reads the same settings as Import_FromParameters_LayerOptions and converts each version 3 layer number to the corresponding current layer. A layer whose setting is missing from the string keeps its current value.

Inherited members​

Returned by​

IPCB_Board.PrinterOptions