FormattedText Třída

Definice

Poskytuje ovládací prvek nízké úrovně pro kreslení textu v aplikacích WINDOWS Presentation Foundation (WPF).

public ref class FormattedText
public class FormattedText
type FormattedText = class
Public Class FormattedText
Dědičnost
FormattedText

Příklady

Následující příklad vytvoří FormattedText objekt a pak na text použije několik stylů formátování.

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

Poznámky

Objekt FormattedText umožňuje nakreslit víceřádkový text, ve kterém může být každý znak textu individuálně formátován. Následující příklad ukazuje text s několika použitými formáty.

Text zobrazený pomocí objektu FormattedText Příklad formátovaného textového řetězce

Z hlediska textových funkcí WPF se považuje za "nízké úrovně", FormattedText protože zpracovává text jako grafické prvky. Další aspekty textu v WPF zpracovávají text v kontextu ovládacích prvků, které jsou vyhrazené pro text (TextBlock, TextBox), implementují model toku dokumentu (viz Přehled dokumentu toku) nebo podporují model dokumentu XPS (viz Dokumenty ve WPF).

Mnoho metod setter má FormattedText podobnost s připojenými vlastnostmi, které jsou podporovány TextElement, ale TextElement připojené vlastnosti platí pro podporu textu vyšší úrovně buď pro tok nebo XPS.

Konstruktory

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

Inicializuje novou instanci FormattedText třídy se zadaným textem, jazykovou verzí, směr toku, typeface, velikost písma, štětcem popředí a hodnotou pixelsPerDip.

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

Inicializuje novou instanci FormattedText třídy se zadaným textem, jazykovou verzí, směr toku, typeface, velikost písma, štětce popředí, chování nahrazení čísel a pixelsPerDip hodnota.

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

Inicializuje novou instanci FormattedText třídy se zadaným textem, jazykovou verzí, směr toku, typeface, velikost písma, štětce popředí, chování nahrazení čísel a pixelsPerDip hodnota.

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

Inicializuje novou instanci FormattedText třídy se zadaným textem, jazykovou verzí, směr toku, typeface, velikost písma, štětcem, chováním nahrazení čísel a režimem formátování textu.

FormattedText(String, CultureInfo, FlowDirection, Typeface, Double, Brush, NumberSubstitution)
Zastaralé.

Inicializuje novou instanci FormattedText třídy se zadaným textem, jazykovou verzí, směr toku, typeface, velikost písma, štětec a chování nahrazení čísla.

FormattedText(String, CultureInfo, FlowDirection, Typeface, Double, Brush)
Zastaralé.

Inicializuje novou instanci FormattedText třídy se zadaným textem, jazykovou verzí, směr toku, typeface, velikost písma a štětce.

Vlastnosti

Name Description
Baseline

Získá vzdálenost od horní části prvního řádku k účaří prvního řádku objektu FormattedText .

Extent

Získá vzdálenost od nejvíce nakresleného pixelu první čáry do nejspodnějšího nakresleného pixelu poslední čáry.

FlowDirection

Získá nebo nastaví FlowDirectionFormattedText objekt.

Height

Získá vzdálenost od horní části prvního řádku do dolní části posledního řádku objektu FormattedText .

LineHeight

Získá výšku řádku nebo řádkování mezi řádky textu.

MaxLineCount

Získá nebo nastaví maximální počet řádků, které se mají zobrazit. Text, který překračuje hodnotu MaxLineCount , se nezobrazí.

MaxTextHeight

Získá nebo nastaví maximální výšku textového sloupce.

MaxTextWidth

Získá nebo nastaví maximální šířku textu (délku) řádku textu.

MinWidth

Získá nejmenší možnou šířku textu, která může plně obsahovat zadaný textový obsah.

OverhangAfter

Získá vzdálenost od dolního řádku posledního řádku textu do nejspodnějšího nakresleného pixelu.

OverhangLeading

Získá maximální vzdálenost od počátečního zarovnávacího bodu k úvodnímu nakresleného pixelu čáry.

OverhangTrailing

Získá maximální vzdálenost od koncového rukopisného pixelu do koncového zarovnávacího bodu čáry.

PixelsPerDip

Získá nebo nastaví PixelsPerDip, na kterém se má text vykreslit.

Text

Získá řetězec textu, který se má zobrazit.

TextAlignment

Získá nebo nastaví zarovnání textu v rámci objektu FormattedText .

Trimming

Získá nebo nastaví prostředky, pomocí kterých je uvedeno vynechání textu.

Width

Získá šířku mezi úvodními a koncovými body zarovnání řádku, s výjimkou všech koncových prázdných znaků.

WidthIncludingTrailingWhitespace

Získá šířku mezi úvodními a koncovými body zarovnání řádku, včetně všech koncových prázdných znaků.

Metody

Name Description
BuildGeometry(Point)

Geometry Vrátí objekt, který představuje formátovaný text, včetně všech glyfů a textových dekorací.

BuildHighlightGeometry(Point, Int32, Int32)

Geometry Vrátí objekt, který představuje ohraničující pole zvýraznění pro zadaný podřetěc formátovaného textu.

BuildHighlightGeometry(Point)

Geometry Vrátí objekt, který představuje ohraničující pole zvýraznění formátovaného textu.

Equals(Object)

Určuje, zda je zadaný objekt roven aktuálnímu objektu.

(Zděděno od Object)
GetHashCode()

Slouží jako výchozí funkce hash.

(Zděděno od Object)
GetMaxTextWidths()

Načte pole šířky textu. Každý prvek v poli představuje maximální šířku textu sekvenčních řádků textu.

GetType()

Získá Type aktuální instance.

(Zděděno od Object)
MemberwiseClone()

Vytvoří mělkou kopii aktuálního Object.

(Zděděno od Object)
SetCulture(CultureInfo, Int32, Int32)

CultureInfo Nastaví pro zadanou podmnožinu znaků v objektuFormattedText.

SetCulture(CultureInfo)

CultureInfo Nastaví celou sadu znaků v objektuFormattedText.

SetFontFamily(FontFamily, Int32, Int32)

Nastaví rodinu písem pro zadanou podmnožinu znaků v objektu FormattedText .

SetFontFamily(FontFamily)

Nastaví rodinu písem pro FormattedText objekt.

SetFontFamily(String, Int32, Int32)

Nastaví rodinu písem pro zadanou podmnožinu znaků v objektu FormattedText .

SetFontFamily(String)

Nastaví rodinu písem pro celou sadu znaků v objektu FormattedText .

SetFontSize(Double, Int32, Int32)

Nastaví velikost písma pro zadanou podmnožinu znaků v objektu FormattedText .

SetFontSize(Double)

Nastaví velikost písma pro celou sadu znaků v objektu FormattedText .

SetFontStretch(FontStretch, Int32, Int32)

Nastaví hodnotu roztažení písma pro zadanou podmnožinu znaků v objektu FormattedText .

SetFontStretch(FontStretch)

Nastaví hodnotu roztažení písma pro celou sadu znaků v objektu FormattedText .

SetFontStyle(FontStyle, Int32, Int32)

Nastaví styl písma pro zadanou podmnožinu znaků v objektu FormattedText .

SetFontStyle(FontStyle)

Nastaví styl písma pro celou sadu znaků v objektu FormattedText .

SetFontTypeface(Typeface, Int32, Int32)

Nastaví typ písma pro zadanou podmnožinu znaků v objektu FormattedText .

SetFontTypeface(Typeface)

Nastaví typ písma pro celou sadu znaků v objektu FormattedText .

SetFontWeight(FontWeight, Int32, Int32)

FontWeight Změní zadaný text v rámci objektuFormattedText.

SetFontWeight(FontWeight)

Nastaví tloušťku písma pro celou sadu znaků v objektu FormattedText .

SetForegroundBrush(Brush, Int32, Int32)

Změní popředí Brush zadaného textu v objektu FormattedText .

SetForegroundBrush(Brush)

Změní popředí Brush pro celý FormattedText objekt.

SetMaxTextWidths(Double[])

Nastaví matici maximální šířky textu v rámci FormattedTextjednotlivých řádků. Každý prvek v poli představuje maximální šířku textu sekvenčních řádků textu.

SetNumberSubstitution(NumberSubstitution, Int32, Int32)

Nastaví chování nahrazení čísla pro zadaný text v rámci objektu FormattedText .

SetNumberSubstitution(NumberSubstitution)

Nastaví chování nahrazení čísel pro celou sadu znaků v objektu FormattedText .

SetTextDecorations(TextDecorationCollection, Int32, Int32)

TextDecorationCollection Nastaví pro zadaný text v rámci objektuFormattedText.

SetTextDecorations(TextDecorationCollection)

TextDecorationCollection Nastaví celou sadu znaků v objektuFormattedText.

ToString()

Vrátí řetězec, který představuje aktuální objekt.

(Zděděno od Object)

Platí pro

Viz také