FormattedText FormattedText FormattedText FormattedText Class

Definition

Windows Presentation Foundation (WPF) アプリケーションでのテキストの描画に対する低レベルの制御を提供します。 Provides low-level control for drawing text in Windows Presentation Foundation (WPF) applications.

public ref class FormattedText
public class FormattedText
type FormattedText = class
Public Class FormattedText
Inheritance
FormattedTextFormattedTextFormattedTextFormattedText

Examples

次の例では、作成、FormattedTextオブジェクトし、テキストにいくつかの書式スタイルを適用します。The following example creates a FormattedText object and then applies several formatting styles to the text.

protected override void OnRender(DrawingContext drawingContext)
{
    string testString = "Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor";

    // Create the initial formatted text string.
    FormattedText formattedText = new FormattedText(
        testString,
        CultureInfo.GetCultureInfo("en-us"),
        FlowDirection.LeftToRight,
        new Typeface("Verdana"),
        32,
        Brushes.Black);

    // Set a maximum width and height. If the text overflows these values, an ellipsis "..." appears.
    formattedText.MaxTextWidth = 300;
    formattedText.MaxTextHeight = 240;

    // Use a larger font size beginning at the first (zero-based) character and continuing for 5 characters.
    // The font size is calculated in terms of points -- not as device-independent pixels.
    formattedText.SetFontSize(36 * (96.0 / 72.0), 0, 5);

    // Use a Bold font weight beginning at the 6th character and continuing for 11 characters.
    formattedText.SetFontWeight(FontWeights.Bold, 6, 11);

    // Use a linear gradient brush beginning at the 6th character and continuing for 11 characters.
    formattedText.SetForegroundBrush(
                            new LinearGradientBrush(
                            Colors.Orange,
                            Colors.Teal,
                            90.0),
                            6, 11);

    // Use an Italic font style beginning at the 28th character and continuing for 28 characters.
    formattedText.SetFontStyle(FontStyles.Italic, 28, 28);

    // Draw the formatted text string to the DrawingContext of the control.
    drawingContext.DrawText(formattedText, new Point(10, 0));
}
Protected Overrides Sub OnRender(ByVal drawingContext As DrawingContext)
	Dim testString As String = "Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor"

	' Create the initial formatted text string.
	Dim formattedText As New FormattedText(testString, CultureInfo.GetCultureInfo("en-us"), FlowDirection.LeftToRight, New Typeface("Verdana"), 32, Brushes.Black)

	' Set a maximum width and height. If the text overflows these values, an ellipsis "..." appears.
	formattedText.MaxTextWidth = 300
	formattedText.MaxTextHeight = 240

	' Use a larger font size beginning at the first (zero-based) character and continuing for 5 characters.
	' The font size is calculated in terms of points -- not as device-independent pixels.
	formattedText.SetFontSize(36 * (96.0 / 72.0), 0, 5)

	' Use a Bold font weight beginning at the 6th character and continuing for 11 characters.
	formattedText.SetFontWeight(FontWeights.Bold, 6, 11)

	' Use a linear gradient brush beginning at the 6th character and continuing for 11 characters.
	formattedText.SetForegroundBrush(New LinearGradientBrush(Colors.Orange, Colors.Teal, 90.0), 6, 11)

	' Use an Italic font style beginning at the 28th character and continuing for 28 characters.
	formattedText.SetFontStyle(FontStyles.Italic, 28, 28)

	' Draw the formatted text string to the DrawingContext of the control.
	drawingContext.DrawText(formattedText, New Point(10, 0))
End Sub

Remarks

FormattedTextオブジェクトを使用すると、これで、テキスト内の各文字に個別に書式設定できます、複数行のテキストを描画します。The FormattedText object allows you to draw multi-line text, in which each character in the text can be individually formatted. 複数の書式が適用されたテキストを次の例に示します。The following example shows text that has several formats applied to it.

FormattedText オブジェクトを使用して表示されるテキストText displayed using FormattedText object
書式設定されたテキスト文字列の例Example of a formatted text string

テキストの特徴の観点からWPFWPFFormattedTextグラフィック要素としてテキストを処理するために「低」は考慮します。In terms of text features in WPFWPF, FormattedText is considered "low-level" because it processes text as graphical elements. 内のテキストの他の側面WPFWPFは専用のテキスト コントロールのコンテキスト内のテキストを処理 (TextBlockTextBox)、フロー ドキュメント モデルを実装する (を参照してくださいフロー ドキュメントの概要)、または、のサポートXPSXPSドキュメント モデル (を参照してくださいWPF のドキュメント)。Other aspects of text in WPFWPF handle text in the context of controls that are dedicated to text (TextBlock, TextBox), implement the flow document model (see Flow Document Overview), or support the XPSXPS document model (see Documents in WPF).

Setter メソッドの多くFormattedTextでサポートされている添付プロパティとの類似点があるTextElementが、TextElementより高度なテキストに適用される添付プロパティ フローのいずれかをサポートまたはXPSXPSします。Many of the setter methods in FormattedText have similarities to attached properties that are supported by TextElement, but the TextElement attached properties apply to the higher-level text support either for flow or XPSXPS.

Constructors

FormattedText(String, CultureInfo, FlowDirection, Typeface, Double, Brush) FormattedText(String, CultureInfo, FlowDirection, Typeface, Double, Brush) FormattedText(String, CultureInfo, FlowDirection, Typeface, Double, Brush) FormattedText(String, CultureInfo, FlowDirection, Typeface, Double, Brush)

テキスト、カルチャ、フロー方向、タイプフェイス、フォント サイズ、およびブラシを指定して、FormattedText クラスの新しいインスタンスを初期化します。 Initializes a new instance of the FormattedText class with the specified text, culture, flow direction, typeface, font size, and brush.

FormattedText(String, CultureInfo, FlowDirection, Typeface, Double, Brush, Double) FormattedText(String, CultureInfo, FlowDirection, Typeface, Double, Brush, Double) FormattedText(String, CultureInfo, FlowDirection, Typeface, Double, Brush, Double) FormattedText(String, CultureInfo, FlowDirection, Typeface, Double, Brush, Double)

テキスト、カルチャ、フロー方向、タイプフェイス、フォント サイズ、前景ブラシ、および pixelsPerDip 値を指定して、FormattedText クラスの新しいインスタンスを初期化します。 Initializes a new instance of the FormattedText class with the specified text, culture, flow direction, typeface, font size, foreground brush, and pixelsPerDip value.

FormattedText(String, CultureInfo, FlowDirection, Typeface, Double, Brush, NumberSubstitution) FormattedText(String, CultureInfo, FlowDirection, Typeface, Double, Brush, NumberSubstitution) FormattedText(String, CultureInfo, FlowDirection, Typeface, Double, Brush, NumberSubstitution) FormattedText(String, CultureInfo, FlowDirection, Typeface, Double, Brush, NumberSubstitution)

テキスト、カルチャ、フロー方向、タイプフェイス、フォント サイズ、ブラシ、および数字の置換動作を指定して、FormattedText クラスの新しいインスタンスを初期化します。 Initializes a new instance of the FormattedText class with the specified text, culture, flow direction, typeface, font size, brush, and number substitution behavior.

FormattedText(String, CultureInfo, FlowDirection, Typeface, Double, Brush, NumberSubstitution, Double) FormattedText(String, CultureInfo, FlowDirection, Typeface, Double, Brush, NumberSubstitution, Double) FormattedText(String, CultureInfo, FlowDirection, Typeface, Double, Brush, NumberSubstitution, Double) FormattedText(String, CultureInfo, FlowDirection, Typeface, Double, Brush, NumberSubstitution, Double)

テキスト、カルチャ、フロー方向、タイプフェイス、フォント サイズ、前景ブラシ、数字の置換動作、および pixelsPerDip 値を指定して、FormattedText クラスの新しいインスタンスを初期化します。 Initializes a new instance of the FormattedText class with the specified text, culture, flow direction, typeface, font size, foreground brush, number substitution behavior, and pixelsPerDip value.

FormattedText(String, CultureInfo, FlowDirection, Typeface, Double, Brush, NumberSubstitution, TextFormattingMode) FormattedText(String, CultureInfo, FlowDirection, Typeface, Double, Brush, NumberSubstitution, TextFormattingMode) FormattedText(String, CultureInfo, FlowDirection, Typeface, Double, Brush, NumberSubstitution, TextFormattingMode) FormattedText(String, CultureInfo, FlowDirection, Typeface, Double, Brush, NumberSubstitution, TextFormattingMode)

指定されたテキスト、カルチャ、フロー方向、タイプフェイス、フォント サイズ、ブラシ、数字の置換動作、およびテキストの書式設定モードを使用して、FormattedText クラスの新しいインスタンスを初期化します。 Initializes a new instance of the FormattedText class with the specified text, culture, flow direction, typeface, font size, brush, number substitution behavior, and text formatting mode.

FormattedText(String, CultureInfo, FlowDirection, Typeface, Double, Brush, NumberSubstitution, TextFormattingMode, Double) FormattedText(String, CultureInfo, FlowDirection, Typeface, Double, Brush, NumberSubstitution, TextFormattingMode, Double) FormattedText(String, CultureInfo, FlowDirection, Typeface, Double, Brush, NumberSubstitution, TextFormattingMode, Double) FormattedText(String, CultureInfo, FlowDirection, Typeface, Double, Brush, NumberSubstitution, TextFormattingMode, Double)

テキスト、カルチャ、フロー方向、タイプフェイス、フォント サイズ、前景ブラシ、数字の置換動作、および pixelsPerDip 値を指定して、FormattedText クラスの新しいインスタンスを初期化します。 Initializes a new instance of the FormattedText class with the specified text, culture, flow direction, typeface, font size, foreground brush, number substitution behavior, and pixelsPerDip value.

Properties

Baseline Baseline Baseline Baseline

FormattedText オブジェクトの最初の行の上端から最初の行のベースラインまでの距離を取得します。 Gets the distance from the top of the first line to the baseline of the first line of a FormattedText object.

Extent Extent Extent Extent

最初の行の最上部の描画ピクセルから、最後の行の最下部の描画ピクセルまでの距離を取得します。 Gets the distance from the topmost drawn pixel of the first line to the bottommost drawn pixel of the last line.

FlowDirection FlowDirection FlowDirection FlowDirection

FlowDirection オブジェクトの FormattedText を取得または設定します。 Gets or sets the FlowDirection of a FormattedText object.

Height Height Height Height

FormattedText オブジェクトの最初の行の上端から最後の行の下端までの距離を示す値を取得します。 Gets the distance from the top of the first line to the bottom of the last line of the FormattedText object.

LineHeight LineHeight LineHeight LineHeight

テキスト行の行間の高さ (行間隔) を取得します。 Gets the line height, or line spacing, between lines of text.

MaxLineCount MaxLineCount MaxLineCount MaxLineCount

表示する行の最大数を取得または設定します。 Gets or sets the maximum number of lines to display. MaxLineCount を超えるテキストは表示されません。 Text exceeding the MaxLineCount will not be displayed.

MaxTextHeight MaxTextHeight MaxTextHeight MaxTextHeight

テキスト行の最大の高さを取得または設定します。 Gets or sets the maximum height of a text column.

MaxTextWidth MaxTextWidth MaxTextWidth MaxTextWidth

テキスト行の最大のテキスト幅 (長さ) を取得または設定します。 Gets or sets the maximum text width (length) for a line of text.

MinWidth MinWidth MinWidth MinWidth

指定したテキスト コンテンツをすべて格納できる最小のテキスト幅を取得します。 Gets the smallest possible text width that can fully contain the specified text content.

OverhangAfter OverhangAfter OverhangAfter OverhangAfter

テキストの最後の行の下端から最下部の描画ピクセルまでの距離を取得します。 Gets the distance from the bottom of the last line of text to the bottommost drawn pixel.

OverhangLeading OverhangLeading OverhangLeading OverhangLeading

行の先頭の配置ポイントから先頭の描画ピクセルまでの最大距離を取得します。 Gets the maximum distance from the leading alignment point to the leading drawn pixel of a line.

OverhangTrailing OverhangTrailing OverhangTrailing OverhangTrailing

行の末尾のインク付きピクセルから末尾の配置ポイントまでの最大距離を取得します。 Gets the maximum distance from the trailing inked pixel to the trailing alignment point of a line.

PixelsPerDip PixelsPerDip PixelsPerDip PixelsPerDip

テキストを表示する PixelsPerDip を取得または設定します。 Get or sets the PixelsPerDip at which the text should be rendered.

Text Text Text Text

表示されるテキストの文字列を取得します。 Gets the string of text to be displayed.

TextAlignment TextAlignment TextAlignment TextAlignment

FormattedText オブジェクト内のテキストの配置を取得または設定します。 Gets or sets the alignment of text within a FormattedText object.

Trimming Trimming Trimming Trimming

テキストの省略の指定方法を取得または設定します。 Gets or sets the means by which the omission of text is indicated.

Width Width Width Width

行の先頭の配置ポイントから末尾の配置ポイントまでの幅 (末尾の空白文字を除く) を取得します。 Gets the width between the leading and trailing alignment points of a line, excluding any trailing white-space characters.

WidthIncludingTrailingWhitespace WidthIncludingTrailingWhitespace WidthIncludingTrailingWhitespace WidthIncludingTrailingWhitespace

行の先頭の配置ポイントから末尾の配置ポイントまでの幅 (末尾の空白文字を含む) を取得します。 Gets the width between the leading and trailing alignment points of a line, including any trailing white-space characters.

Methods

BuildGeometry(Point) BuildGeometry(Point) BuildGeometry(Point) BuildGeometry(Point)

書式設定されたテキストを表す Geometry オブジェクトを返します。グリフや文字装飾など、書式設定されたテキストはすべて対象となります。 Returns a Geometry object that represents the formatted text, including all glyphs and text decorations.

BuildHighlightGeometry(Point) BuildHighlightGeometry(Point) BuildHighlightGeometry(Point) BuildHighlightGeometry(Point)

書式設定されたテキストの強調表示境界ボックスを表す Geometry オブジェクトを返します。 Returns a Geometry object that represents the highlight bounding box of the formatted text.

BuildHighlightGeometry(Point, Int32, Int32) BuildHighlightGeometry(Point, Int32, Int32) BuildHighlightGeometry(Point, Int32, Int32) BuildHighlightGeometry(Point, Int32, Int32)

書式設定されたテキストに含まれる指定した部分文字列の強調表示境界ボックスを表す Geometry オブジェクトを返します。 Returns a Geometry object that represents the highlight bounding box for a specified substring of the formatted text.

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

指定したオブジェクトが、現在のオブジェクトと等しいかどうかを判断します。 Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetHashCode() GetHashCode() GetHashCode() GetHashCode()

既定のハッシュ関数として機能します。 Serves as the default hash function.

(Inherited from Object)
GetMaxTextWidths() GetMaxTextWidths() GetMaxTextWidths() GetMaxTextWidths()

テキスト幅の配列を取得します。 Retrieves an array of text widths. この配列の各要素は、連続したテキスト行の最大のテキスト幅を表します。 Each element in the array represents the maximum text width of sequential lines of text.

GetType() GetType() GetType() GetType()

現在のインスタンスの Type を取得します。 Gets the Type of the current instance.

(Inherited from Object)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

現在の Object の簡易コピーを作成します。 Creates a shallow copy of the current Object.

(Inherited from Object)
SetCulture(CultureInfo) SetCulture(CultureInfo) SetCulture(CultureInfo) SetCulture(CultureInfo)

CultureInfo オブジェクト内の文字列全体の FormattedText を設定します。 Sets the CultureInfo for the entire set of characters in the FormattedText object.

SetCulture(CultureInfo, Int32, Int32) SetCulture(CultureInfo, Int32, Int32) SetCulture(CultureInfo, Int32, Int32) SetCulture(CultureInfo, Int32, Int32)

CultureInfo オブジェクト内の文字の指定したサブセットの FormattedText を設定します。 Sets the CultureInfo for a specified subset of characters in the FormattedText object.

SetFontFamily(FontFamily) SetFontFamily(FontFamily) SetFontFamily(FontFamily) SetFontFamily(FontFamily)

FormattedText オブジェクトのフォント ファミリを設定します。 Sets the font family for a FormattedText object.

SetFontFamily(FontFamily, Int32, Int32) SetFontFamily(FontFamily, Int32, Int32) SetFontFamily(FontFamily, Int32, Int32) SetFontFamily(FontFamily, Int32, Int32)

FormattedText オブジェクト内の文字の指定したサブセットのフォント ファミリを設定します。 Sets the font family for a specified subset of characters in the FormattedText object.

SetFontFamily(String) SetFontFamily(String) SetFontFamily(String) SetFontFamily(String)

FormattedText オブジェクト内の文字列全体のフォント ファミリを設定します。 Sets the font family for the entire set of characters in the FormattedText object.

SetFontFamily(String, Int32, Int32) SetFontFamily(String, Int32, Int32) SetFontFamily(String, Int32, Int32) SetFontFamily(String, Int32, Int32)

FormattedText オブジェクト内の文字の指定したサブセットのフォント ファミリを設定します。 Sets the font family for a specified subset of characters in the FormattedText object.

SetFontSize(Double) SetFontSize(Double) SetFontSize(Double) SetFontSize(Double)

FormattedText オブジェクト内の文字列全体のフォント サイズを設定します。 Sets the font size for the entire set of characters in the FormattedText object.

SetFontSize(Double, Int32, Int32) SetFontSize(Double, Int32, Int32) SetFontSize(Double, Int32, Int32) SetFontSize(Double, Int32, Int32)

FormattedText オブジェクト内の文字の指定したサブセットのフォント サイズを設定します。 Sets the font size for a specified subset of characters in the FormattedText object.

SetFontStretch(FontStretch) SetFontStretch(FontStretch) SetFontStretch(FontStretch) SetFontStretch(FontStretch)

FormattedText オブジェクト内の文字列全体のフォントの伸縮値を設定します。 Sets the font stretch value for the entire set of characters in the FormattedText object.

SetFontStretch(FontStretch, Int32, Int32) SetFontStretch(FontStretch, Int32, Int32) SetFontStretch(FontStretch, Int32, Int32) SetFontStretch(FontStretch, Int32, Int32)

FormattedText オブジェクト内の文字の指定したサブセットに関するフォントの伸縮値を設定します。 Sets the font stretch value for a specified subset of characters in the FormattedText object.

SetFontStyle(FontStyle) SetFontStyle(FontStyle) SetFontStyle(FontStyle) SetFontStyle(FontStyle)

FormattedText オブジェクト内の文字列全体のフォント スタイルを設定します。 Sets the font style for the entire set of characters in the FormattedText object.

SetFontStyle(FontStyle, Int32, Int32) SetFontStyle(FontStyle, Int32, Int32) SetFontStyle(FontStyle, Int32, Int32) SetFontStyle(FontStyle, Int32, Int32)

FormattedText オブジェクト内の文字の指定したサブセットのフォント スタイルを設定します。 Sets the font style for a specified subset of characters in the FormattedText object.

SetFontTypeface(Typeface) SetFontTypeface(Typeface) SetFontTypeface(Typeface) SetFontTypeface(Typeface)

FormattedText オブジェクト内の文字列全体のフォント タイプフェイスを設定します。 Sets the font typeface for the entire set of characters in the FormattedText object.

SetFontTypeface(Typeface, Int32, Int32) SetFontTypeface(Typeface, Int32, Int32) SetFontTypeface(Typeface, Int32, Int32) SetFontTypeface(Typeface, Int32, Int32)

FormattedText オブジェクト内の文字の指定したサブセットのフォント タイプフェイスを設定します。 Sets the font typeface for a specified subset of characters in the FormattedText object.

SetFontWeight(FontWeight) SetFontWeight(FontWeight) SetFontWeight(FontWeight) SetFontWeight(FontWeight)

FormattedText オブジェクト内の文字列全体のフォントの太さを設定します。 Sets the font weight for the entire set of characters in the FormattedText object.

SetFontWeight(FontWeight, Int32, Int32) SetFontWeight(FontWeight, Int32, Int32) SetFontWeight(FontWeight, Int32, Int32) SetFontWeight(FontWeight, Int32, Int32)

FontWeight オブジェクト内の指定したテキストの FormattedText を変更します。 Changes the FontWeight for specified text within a FormattedText object.

SetForegroundBrush(Brush) SetForegroundBrush(Brush) SetForegroundBrush(Brush) SetForegroundBrush(Brush)

Brush オブジェクト全体の前景 FormattedText を変更します。 Changes the foreground Brush for an entire FormattedText object.

SetForegroundBrush(Brush, Int32, Int32) SetForegroundBrush(Brush, Int32, Int32) SetForegroundBrush(Brush, Int32, Int32) SetForegroundBrush(Brush, Int32, Int32)

Brush オブジェクト内の指定したテキストの前景 FormattedText を変更します。 Changes the foreground Brush for specified text within a FormattedText object.

SetMaxTextWidths(Double[]) SetMaxTextWidths(Double[]) SetMaxTextWidths(Double[]) SetMaxTextWidths(Double[])

行単位の最大のテキスト幅の配列を FormattedText 内で設定します。 Sets an array of maximum text widths within the FormattedText, on a per-line basis. この配列の各要素は、連続したテキスト行の最大のテキスト幅を表します。 Each element in the array represents the maximum text width of sequential lines of text.

SetNumberSubstitution(NumberSubstitution) SetNumberSubstitution(NumberSubstitution) SetNumberSubstitution(NumberSubstitution) SetNumberSubstitution(NumberSubstitution)

FormattedText オブジェクト内の文字列全体に適用する数字の置換動作を設定します。 Sets the number substitution behavior for the entire set of characters in the FormattedText object.

SetNumberSubstitution(NumberSubstitution, Int32, Int32) SetNumberSubstitution(NumberSubstitution, Int32, Int32) SetNumberSubstitution(NumberSubstitution, Int32, Int32) SetNumberSubstitution(NumberSubstitution, Int32, Int32)

FormattedText オブジェクト内の指定したテキストに適用する数字の置換動作を設定します。 Sets the number substitution behavior for specified text within a FormattedText object.

SetTextDecorations(TextDecorationCollection) SetTextDecorations(TextDecorationCollection) SetTextDecorations(TextDecorationCollection) SetTextDecorations(TextDecorationCollection)

TextDecorationCollection オブジェクト内の文字列全体の FormattedText を設定します。 Sets the TextDecorationCollection for the entire set of characters in the FormattedText object.

SetTextDecorations(TextDecorationCollection, Int32, Int32) SetTextDecorations(TextDecorationCollection, Int32, Int32) SetTextDecorations(TextDecorationCollection, Int32, Int32) SetTextDecorations(TextDecorationCollection, Int32, Int32)

TextDecorationCollection オブジェクト内の指定したテキストの FormattedText を設定します。 Sets the TextDecorationCollection for specified text within a FormattedText object.

ToString() ToString() ToString() ToString()

現在のオブジェクトを表す文字列を返します。 Returns a string that represents the current object.

(Inherited from Object)

Applies to

See Also