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 kreslit víceřádkový text, ve kterém může být každý znak v 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ízkou úroveň", FormattedText protože zpracovává text jako grafické prvky. Další aspekty textu ve WPF zpracovávají text v kontextu ovládacích prvků, které jsou vyhrazené pro text (TextBlock, TextBox), implementují model toku dokumentů (viz Flow Přehled dokumentu) nebo podporují model dokumentů XPS (viz Dokumenty ve WPF).

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

Konstruktory

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

Inicializuje novou instanci třídy pomocí zadaného FormattedText textu, jazykové verze, směru toku, řezu písma, velikosti písma a štětce.

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

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

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

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

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

Inicializuje novou instanci FormattedText třídy se zadaným textem, jazykovou verzí, směrem toku, typem písma, velikostí písma, štětcem popředí, chováním nahrazení čísla a hodnotou pixelsPerDip.

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

Inicializuje novou instanci třídy pomocí zadaného FormattedText textu, jazykové verze, směru toku, řezu písma, velikosti písma, štětce, chování nahrazení čísel a režimu formátování textu.

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

Inicializuje novou instanci FormattedText třídy se zadaným textem, jazykovou verzí, směrem toku, typem písma, velikostí písma, štětcem popředí, chováním nahrazení čísla a hodnotou pixelsPerDip.

Vlastnosti

Baseline

Získá vzdálenost od horní části prvního řádku k směrnému plánu prvního řádku objektu FormattedText .

Extent

Získá vzdálenost od nejspodnějšího nakresleného pixelu prvního řádku k nejspodnějšímu nakresleného pixelu poslední čáry.

FlowDirection

Získá nebo nastaví FlowDirection FormattedText objekt.

Height

Získá vzdálenost od horního řádku 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 překračující 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 k nejspodnějšímu nakresleného pixelu.

OverhangLeading

Získá maximální vzdálenost od počátečního zarovnávacího bodu na úvodní nakreslený pixel čáry.

OverhangTrailing

Získá maximální vzdálenost od koncového rukopisného pixelu ke koncovému bodu zarovnání čáry.

PixelsPerDip

Získá nebo nastaví PixelsPerDip, ve 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 objektu FormattedText .

Trimming

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

Width

Získá šířku mezi počátečními a koncovými body zarovnání čáry s výjimkou všech prázdných znaků.

WidthIncludingTrailingWhitespace

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

Metody

BuildGeometry(Point)

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

BuildHighlightGeometry(Point)

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

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.

Equals(Object)

Určí, zda se zadaný objekt rovná 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()

Type Získá aktuální instanci.

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

Vytvoří použádnou kopii aktuálního souboru Object.

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

CultureInfo Nastaví celou sadu znaků v objektuFormattedText.

SetCulture(CultureInfo, Int32, Int32)

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

SetFontFamily(FontFamily)

Nastaví rodinu písem pro FormattedText objekt.

SetFontFamily(FontFamily, 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 .

SetFontFamily(String, Int32, Int32)

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

SetFontSize(Double)

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

SetFontSize(Double, Int32, Int32)

Nastaví velikost 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 .

SetFontStretch(FontStretch, Int32, Int32)

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

SetFontStyle(FontStyle)

Nastaví styl 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 .

SetFontTypeface(Typeface)

Nastaví typ 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 .

SetFontWeight(FontWeight)

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

SetFontWeight(FontWeight, Int32, Int32)

FontWeight Změní zadaný text v objektuFormattedText.

SetForegroundBrush(Brush)

Změní popředí Brush celého objektu FormattedText .

SetForegroundBrush(Brush, Int32, Int32)

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

SetMaxTextWidths(Double[])

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

SetNumberSubstitution(NumberSubstitution)

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

SetNumberSubstitution(NumberSubstitution, Int32, Int32)

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

SetTextDecorations(TextDecorationCollection)

TextDecorationCollection Nastaví pro celou sadu znaků v objektuFormattedText.

SetTextDecorations(TextDecorationCollection, Int32, Int32)

TextDecorationCollection Nastaví pro zadaný text v objektuFormattedText.

ToString()

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

(Zděděno od Object)

Platí pro

Viz také