In This Article

IPrintSettings Interface

Provides the base requirements for an object that supports printing the contents of a SyntaxEditor.

public interface IPrintSettings

Properties

AreCollapsedOutliningNodesAllowed

Gets or sets whether collapsed outlining nodes are allowed.

bool AreCollapsedOutliningNodesAllowed { get; set; }

Property Value

System.Boolean:

true if collapsed outlining nodes are allowed; otherwise, false. The default value is false.

Remarks

When false, all collapsed outlining nodes will be expanded within the printout.

AreColumnGuidesVisible

Gets or sets whether column guides are visible.

bool AreColumnGuidesVisible { get; set; }

Property Value

System.Boolean:

true if column guides are visible; otherwise, false. The default value is false.

AreIndentationGuidesVisible

Gets or sets whether indentation guides are visible.

bool AreIndentationGuidesVisible { get; set; }

Property Value

System.Boolean:

true if indentation guides are visible; otherwise, false. The default value is false.

AreSquiggleLinesVisible

Gets or sets whether squiggle lines are visible.

bool AreSquiggleLinesVisible { get; set; }

Property Value

System.Boolean:

true if squiggle lines are visible; otherwise, false. The default value is false.

DocumentTitle

Gets or sets the document title that should appear at the top of every page.

string DocumentTitle { get; set; }

Property Value

System.String:

The document title that should appear at the top of every page.

Remarks

This is often set to the filename of the document.

HighlightingStyleRegistry

Gets or sets the IHighlightingStyleRegistry to use for printouts, if different than the active registry in the editor.

IHighlightingStyleRegistry HighlightingStyleRegistry { get; set; }

Property Value

IHighlightingStyleRegistry:

The IHighlightingStyleRegistry to use for printouts, if different than the active registry in the editor.

Remarks

If this property is null, the active registry in the editor will be used. This property should generally be set when the editor is using a dark theme, since printouts require a light theme.

IsDocumentTitleMarginVisible

Gets or sets whether the document title margin is visible.

bool IsDocumentTitleMarginVisible { get; set; }

Property Value

System.Boolean:

true if the document title margin is visible; otherwise, false. The default value is true.

IsLineNumberMarginVisible

Gets or sets whether the line number margin is visible.

bool IsLineNumberMarginVisible { get; set; }

Property Value

System.Boolean:

true if the line number margin is visible; otherwise, false. The default value is false.

IsPageNumberMarginVisible

Gets or sets whether the page number margin is visible.

bool IsPageNumberMarginVisible { get; set; }

Property Value

System.Boolean:

true if the page number margin is visible; otherwise, false. The default value is true.

IsSyntaxHighlightingEnabled

Gets or sets whether syntax highlighting is enabled.

bool IsSyntaxHighlightingEnabled { get; set; }

Property Value

System.Boolean:

true if syntax highlighting is enabled; otherwise, false. The default value is true.

IsWhitespaceVisible

Gets or sets whether whitespace (spaces and tabs) is visible.

bool IsWhitespaceVisible { get; set; }

Property Value

System.Boolean:

true if whitespace (spaces and tabs) is visible; otherwise, false. The default value is false.

IsWordWrapGlyphMarginVisible

Gets or sets whether the word wrap glyph margin is visible.

bool IsWordWrapGlyphMarginVisible { get; set; }

Property Value

System.Boolean:

true if the word wrap glyph margin is visible; otherwise, false. The default value is true.

PageMargin

Gets or sets the System.Windows.Thickness of the page margin.

Thickness PageMargin { get; set; }

Property Value

System.Windows.Thickness:

The System.Windows.Thickness of the page margin.

Remarks

The default value is 96 * 0.75, where 1 inch = 96px in default resolution. This means the default margin is 0.75in.

PageSize

Gets or sets the System.Windows.Size of each page.

Size PageSize { get; set; }

Property Value

System.Windows.Size:

The System.Windows.Size of each page.

Remarks

A standard 8.5" x 11" page would have values 96 * 8.5, 96 * 11, where 1 inch = 96px in default resolution.

ViewMarginFactories

Gets the collection that contains the IPrinterViewMarginFactory objects used to generate the margins for an IPrinterView.

IPrinterViewMarginFactoryCollection ViewMarginFactories { get; }

Property Value

IPrinterViewMarginFactoryCollection:

A IPrinterViewMarginFactoryCollection that contains the factories. The default collection contains a DefaultPrinterViewMarginFactory.

Methods

CreateFixedDocument(SyntaxEditor)

Creates a System.Windows.Documents.FixedDocument representation of the editor contents, allowing for printing.

FixedDocument CreateFixedDocument(SyntaxEditor syntaxEditor)
Parameter Type Description
syntaxEditor SyntaxEditor

The SyntaxEditor for which to create a System.Windows.Documents.FixedDocument.

Returns

System.Windows.Documents.FixedDocument:

The System.Windows.Documents.FixedDocument that was created.

CreateFixedDocument(SyntaxEditor, IPrinterViewOptions)

Creates a System.Windows.Documents.FixedDocument representation of the editor contents, allowing for printing.

FixedDocument CreateFixedDocument(SyntaxEditor syntaxEditor, IPrinterViewOptions options)
Parameter Type Description
syntaxEditor SyntaxEditor

The SyntaxEditor for which to create a System.Windows.Documents.FixedDocument.

options IPrinterViewOptions

An IPrinterViewOptions that contains IPrinterView-related options.

Returns

System.Windows.Documents.FixedDocument:

The System.Windows.Documents.FixedDocument that was created.

See Also