In This Article

ICanvas Interface

Provides the base requirements for an element that supports custom rendering of content.

public interface ICanvas

Methods

CreateTextBatch()

Creates an IDisposable object that contains a reference to a text renderer, which can be passed to the RunTextFormatter(IDisposable) to more efficiently process multiple similar text layouts in a batch.

IDisposable CreateTextBatch()

Returns

IDisposable:

An IDisposable object. Once disposed, the batch is ended.

CreateTextLayout(ITextProvider, float, string, float, Brush, IEnumerable<ITextSpacer>)

Creates an ITextLayout that can render text runs on a canvas.

ITextLayout CreateTextLayout(ITextProvider textProvider, float maxWidth, string fontFamilyName, float fontSize, Brush foreground, IEnumerable<ITextSpacer> spacers)
Parameter Type Description
textProvider ITextProvider

An ITextProvider that provides access to the text string.

maxWidth float

The maximum width of the layout, which is used if word wrap is enabled.

fontFamilyName string

The default font family name.

fontSize float

The default font size.

foreground Brush

The default foreground.

spacers IEnumerable<ITextSpacer>

The optional intra-text spacers.

Returns

ITextLayout:

The ITextLayout that was created.

CreateTextLayout(ITextProvider, float, string, float, Brush, FontWeight, FontStyle, IEnumerable<ITextSpacer>)

Creates an ITextLayout that can render text runs on a canvas.

ITextLayout CreateTextLayout(ITextProvider textProvider, float maxWidth, string fontFamilyName, float fontSize, Brush foreground, FontWeight fontWeight, FontStyle fontStyle, IEnumerable<ITextSpacer> spacers)
Parameter Type Description
textProvider ITextProvider

An ITextProvider that provides access to the text string.

maxWidth float

The maximum width of the layout, which is used if word wrap is enabled.

fontFamilyName string

The default font family name.

fontSize float

The default font size.

foreground Brush

The default foreground.

fontWeight FontWeight

The default font weight.

fontStyle FontStyle

The default font style.

spacers IEnumerable<ITextSpacer>

The optional intra-text spacers.

Returns

ITextLayout:

The ITextLayout that was created.

CreateTextLayout(ITextProvider, float, string, float, Color, IEnumerable<ITextSpacer>)

Creates an ITextLayout that can render text runs on a canvas.

ITextLayout CreateTextLayout(ITextProvider textProvider, float maxWidth, string fontFamilyName, float fontSize, Color foreground, IEnumerable<ITextSpacer> spacers)
Parameter Type Description
textProvider ITextProvider

An ITextProvider that provides access to the text string.

maxWidth float

The maximum width of the layout, which is used if word wrap is enabled.

fontFamilyName string

The default font family name.

fontSize float

The default font size.

foreground Color

The default foreground.

spacers IEnumerable<ITextSpacer>

The optional intra-text spacers.

Returns

ITextLayout:

The ITextLayout that was created.

CreateTextLayout(ITextProvider, float, string, float, Color, FontWeight, FontStyle, IEnumerable<ITextSpacer>)

Creates an ITextLayout that can render text runs on a canvas.

ITextLayout CreateTextLayout(ITextProvider textProvider, float maxWidth, string fontFamilyName, float fontSize, Color foreground, FontWeight fontWeight, FontStyle fontStyle, IEnumerable<ITextSpacer> spacers)
Parameter Type Description
textProvider ITextProvider

An ITextProvider that provides access to the text string.

maxWidth float

The maximum width of the layout, which is used if word wrap is enabled.

fontFamilyName string

The default font family name.

fontSize float

The default font size.

foreground Color

The default foreground.

fontWeight FontWeight

The default font weight.

fontStyle FontStyle

The default font style.

spacers IEnumerable<ITextSpacer>

The optional intra-text spacers.

Returns

ITextLayout:

The ITextLayout that was created.

CreateTextLayout(string, float, string, float, Brush)

Creates an ITextLayout that can render text runs on a canvas.

ITextLayout CreateTextLayout(string text, float maxWidth, string fontFamilyName, float fontSize, Brush foreground)
Parameter Type Description
text string

The text string.

maxWidth float

The maximum width of the layout, which is used if word wrap is enabled.

fontFamilyName string

The default font family name.

fontSize float

The default font size.

foreground Brush

The default foreground.

Returns

ITextLayout:

The ITextLayout that was created.

CreateTextLayout(string, float, string, float, Color)

Creates an ITextLayout that can render text runs on a canvas.

ITextLayout CreateTextLayout(string text, float maxWidth, string fontFamilyName, float fontSize, Color foreground)
Parameter Type Description
text string

The text string.

maxWidth float

The maximum width of the layout, which is used if word wrap is enabled.

fontFamilyName string

The default font family name.

fontSize float

The default font size.

foreground Color

The default foreground.

Returns

ITextLayout:

The ITextLayout that was created.

CreateTextSpacer(int, object, Size, double)

Creates an ITextSpacer that can create intra-text space within an ITextLayout.

ITextSpacer CreateTextSpacer(int characterIndex, object key, Size size, double baseline)
Parameter Type Description
characterIndex int

The character index at which the spacer should be inserted.

key object

An optional object that uniquely identifies the spacer.

size Size

The size of the spacer.

baseline double

The baseline of the spacer.

Returns

ITextSpacer:

The ITextSpacer that was created.

GetSolidColorBrush(Color)

Returns a solid color brush for the specified Color.

SolidColorBrush GetSolidColorBrush(Color color)
Parameter Type Description
color Color

The brush color.

Returns

SolidColorBrush:

A solid color brush for the specified Color.

GetSquiggleLinePen(Color)

Returns a squiggle line pen for the specified Color.

Pen GetSquiggleLinePen(Color color)
Parameter Type Description
color Color

The pen color.

Returns

Pen:

A squiggle line pen for the specified Color.

GetSquiggleLinePen(Color, float)

Returns a squiggle line pen for the specified Color.

Pen GetSquiggleLinePen(Color color, float thickness)
Parameter Type Description
color Color

The pen color.

thickness float

The pen thickness.

Returns

Pen:

A squiggle line pen for the specified Color and thickness.