Nyelv

FormattedText Osztály

Definíció

Alacsony szintű vezérlőelemet biztosít a Windows megjelenítési alaprendszer (WPF) alkalmazásokban lévő szöveg rajzoláshoz.

public ref class FormattedText
public class FormattedText
type FormattedText = class
Public Class FormattedText
Öröklődés
FormattedText

Példák

Az alábbi példa létrehoz egy FormattedText objektumot, majd több formázási stílust alkalmaz a szövegre.

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

Megjegyzések

A FormattedText objektum lehetővé teszi többsoros szöveg rajzolására, amelyben a szöveg minden karaktere külön-külön formázható. Az alábbi példa olyan szöveget mutat be, amely több formátumot is alkalmaz.

FormattedText objektummal megjelenített szöveg Példa formázott szöveges sztringre

A WPF szöveges funkcióit tekintve a FormattedText "alacsony szintűnek" minősül, mivel grafikus elemként dolgozza fel a szöveget. Az WPF szöveg egyéb aspektusai a szöveghez kapcsolódó vezérlők kontextusában kezelik a szöveget (TextBlock, TextBox) implementálja a folyamatdokumentum-modellt (lásd: Flow document Overview), vagy támogassa az XPS-dokumentummodellt (lásd Documents in WPF).

A beállító metódusok FormattedText többsége hasonló a csatolt tulajdonságokhoz, amelyek támogatottak TextElement, de a TextElement csatolt tulajdonságok a magasabb szintű szövegtámogatásra vonatkoznak a folyamat vagy az XPS esetében.

Konstruktorok

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

Inicializálja az FormattedText osztály új példányát a megadott szöveggel, kultúrával, folyamatiránysal, betűtípussal, betűmérettel, előtér ecsettel és pixelsPerDip értékkel.

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

Inicializálja az FormattedText osztály új példányát a megadott szöveggel, kultúrával, folyamatiránysal, betűtípussal, betűmérettel, előtérkefével, számhelyettesítési viselkedéssel és pixelsPerDip értékkel.

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

Inicializálja az FormattedText osztály új példányát a megadott szöveggel, kultúrával, folyamatiránysal, betűtípussal, betűmérettel, előtérkefével, számhelyettesítési viselkedéssel és pixelsPerDip értékkel.

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

Inicializálja az FormattedText osztály új példányát a megadott szöveggel, kultúrával, folyamatiránysal, betűtípussal, betűmérettel, ecsettel, számhelyettesítési viselkedéssel és szövegformázási móddal.

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

Inicializálja az osztály egy új példányát a FormattedText megadott szöveggel, kultúrával, folyamatiránysal, betűtípussal, betűmérettel, ecsettel és számhelyettesítési viselkedéssel.

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

Inicializálja az FormattedText osztály új példányát a megadott szöveggel, kultúrával, folyamatiránysal, betűtípussal, betűmérettel és ecsettel.

Tulajdonságok

Name Description
Baseline

Lekéri az első sor tetejétől az objektum első vonalának alapvonala FormattedText közötti távolságot.

Extent

Az első vonal legfelül rajzolt képpontja és az utolsó vonal legmélyén rajzolt képpont közötti távolságot adja meg.

FlowDirection

Lekéri vagy beállítja egy FlowDirectionFormattedText objektumot.

Height

Lekéri az első sor tetejétől az objektum utolsó sorának FormattedText aljára való távolságot.

LineHeight

Lekéri a sormagasságot vagy a sorközt a szövegsorok között.

MaxLineCount

Lekéri vagy beállítja a megjelenítendő sorok maximális számát. A szöveget meghaladó MaxLineCount szöveg nem jelenik meg.

MaxTextHeight

Lekéri vagy beállítja egy szövegoszlop maximális magasságát.

MaxTextWidth

Lekéri vagy beállítja a szövegsorok maximális szélességét (hosszát).

MinWidth

Lekéri a lehető legkisebb szövegszélességű szöveget, amely teljes mértékben tartalmazhatja a megadott szöveges tartalmat.

OverhangAfter

Az utolsó szövegsor aljától a legmélyén rajzolt képpontig tartó távolságot adja meg.

OverhangLeading

A vonal kezdővonal-igazítási pontjától a vonal kezdő rajzolt képpontjának maximális távolságát adja meg.

OverhangTrailing

A záró szabadkézi képpont és a vonal záró igazítási pontja közötti legnagyobb távolságot adja meg.

PixelsPerDip

Lekérheti vagy beállíthatja azt a PixelsPerDip-et, amelyen a szöveget renderelni kell.

Text

Lekéri a megjelenítendő szöveg sztringjét.

TextAlignment

Lekéri vagy beállítja a szöveg igazítását egy objektumon FormattedText belül.

Trimming

Lekéri vagy beállítja a szöveg kihagyásának módját.

Width

Lekéri a vonal kezdő és záró igazítási pontjai közötti szélességet, a záró szóköz karakterek kivételével.

WidthIncludingTrailingWhitespace

Lekéri a vonal kezdő és záró igazítási pontjai közötti szélességet, beleértve a záró szóköz karaktereket is.

Metódusok

Name Description
BuildGeometry(Point)

Geometry Olyan objektumot ad vissza, amely a formázott szöveget jelöli, beleértve az összes karakterjelet és szövegdekorációt.

BuildHighlightGeometry(Point, Int32, Int32)

Olyan Geometry objektumot ad vissza, amely a formázott szöveg adott részszűkítéséhez tartozó kiemelési határolókeretet jelöli.

BuildHighlightGeometry(Point)

Egy Geometry objektumot ad vissza, amely a formázott szöveg kiemelési határolókeretét jelöli.

Equals(Object)

Meghatározza, hogy a megadott objektum egyenlő-e az aktuális objektummal.

(Öröklődés forrása Object)
GetHashCode()

Ez az alapértelmezett kivonatoló függvény.

(Öröklődés forrása Object)
GetMaxTextWidths()

Lekéri a szövegszélességeket tartalmazó tömböt. A tömb minden eleme a szekvenciális szövegsorok maximális szövegszélessége.

GetType()

Lekéri az Type aktuális példányt.

(Öröklődés forrása Object)
MemberwiseClone()

Az aktuális Objectpéldány sekély másolatát hozza létre.

(Öröklődés forrása Object)
SetCulture(CultureInfo, Int32, Int32)

Beállítja az CultureInfo objektumban lévő karakterek megadott részhalmazát FormattedText .

SetCulture(CultureInfo)

Beállítja az CultureInfo objektum teljes karakterkészletét FormattedText .

SetFontFamily(FontFamily, Int32, Int32)

Beállítja a betűcsaládot az objektumban lévő karakterek FormattedText megadott részhalmazához.

SetFontFamily(FontFamily)

Beállítja egy objektum betűtípuscsaládját FormattedText .

SetFontFamily(String, Int32, Int32)

Beállítja a betűcsaládot az objektumban lévő karakterek FormattedText megadott részhalmazához.

SetFontFamily(String)

Az objektum teljes karakterkészletének betűcsaládját FormattedText állítja be.

SetFontSize(Double, Int32, Int32)

Beállítja az objektumban lévő karakterek megadott részhalmazának betűméretét FormattedText .

SetFontSize(Double)

Az objektum teljes karakterkészletének betűméretét állítja be FormattedText .

SetFontStretch(FontStretch, Int32, Int32)

Beállítja az objektumban lévő karakterek FormattedText megadott részhalmazához tartozó betűtartomány értékét.

SetFontStretch(FontStretch)

Beállítja az objektum teljes karakterkészletének FormattedText betűterjedés-értékét.

SetFontStyle(FontStyle, Int32, Int32)

Beállítja az objektumban lévő karakterek megadott részhalmazának betűstílusát FormattedText .

SetFontStyle(FontStyle)

Az objektum teljes karakterkészletének betűstílusát FormattedText állítja be.

SetFontTypeface(Typeface, Int32, Int32)

Beállítja az objektumban lévő karakterek megadott részhalmazához tartozó betűtípus-betűtípust FormattedText .

SetFontTypeface(Typeface)

Beállítja az objektum teljes karakterkészletének betűtípusát FormattedText .

SetFontWeight(FontWeight, Int32, Int32)

Módosítja a FontWeight megadott szöveget egy objektumon FormattedText belül.

SetFontWeight(FontWeight)

Az objektum teljes karakterkészletének betűvastagságát FormattedText állítja be.

SetForegroundBrush(Brush, Int32, Int32)

Módosítja az objektumon belüli megadott szöveg előterét BrushFormattedText .

SetForegroundBrush(Brush)

Egy teljes Brush objektum előterét FormattedText módosítja.

SetMaxTextWidths(Double[])

A soron belüli FormattedTextmaximális szövegszélességeket tartalmazó tömböt állítja be. A tömb minden eleme a szekvenciális szövegsorok maximális szövegszélessége.

SetNumberSubstitution(NumberSubstitution, Int32, Int32)

Beállítja a megadott szöveg számhelyettesítési viselkedését egy objektumon FormattedText belül.

SetNumberSubstitution(NumberSubstitution)

Az objektum teljes karakterkészletének számhelyettesítési viselkedését FormattedText állítja be.

SetTextDecorations(TextDecorationCollection, Int32, Int32)

Beállítja a TextDecorationCollection megadott szöveget egy objektumon FormattedText belül.

SetTextDecorations(TextDecorationCollection)

Beállítja az TextDecorationCollection objektum teljes karakterkészletét FormattedText .

ToString()

Az aktuális objektumot jelképező sztringet ad vissza.

(Öröklődés forrása Object)

A következőre érvényes:

Lásd még