FormattedText Klasse

Definition

Bietet eine einfache Steuerung zum Zeichnen von Text in WCF-Anwendungen.

public ref class FormattedText
public class FormattedText
type FormattedText = class
Public Class FormattedText
Vererbung
FormattedText

Beispiele

Im folgenden Beispiel wird ein FormattedText Objekt erstellt und dann mehrere Formatierungsformatvorlagen auf den Text angewendet.

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

Hinweise

Mit dem FormattedText Objekt können Sie mehrzeiligen Text zeichnen, in dem jedes Zeichen im Text einzeln formatiert werden kann. Das folgende Beispiel zeigt Text mit mehreren angewendeten Formaten:

Text, der mithilfe des FormattedText-Objekts angezeigt wird Beispiel für eine formatierte Textzeichenfolge

In Bezug auf Textfeatures in WPF gilt es als "niedrig", FormattedText da es Text als grafische Elemente verarbeitet. Weitere Aspekte von Text in WPF behandeln Text im Kontext von Steuerelementen, die textbezogener (, TextBox), implementieren das Flussdokumentmodell (siehe Flow Dokumentübersicht) oder unterstützen das XPS-Dokumentmodell (TextBlocksiehe Dokumente in WPF).

Viele der Settermethoden FormattedText verfügen über Ähnlichkeiten mit angefügten Eigenschaften, die von TextElementihnen unterstützt werden, aber die TextElement angefügten Eigenschaften gelten für die Unterstützung von Text auf höherer Ebene entweder für Fluss oder XPS.

Konstruktoren

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

Initialisiert eine neue Instanz der FormattedText-Klasse unter Angabe von Text, Kultur, Flussrichtung, Schriftart, Schriftgrad und Pinsel.

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

Initialisiert eine neue Instanz der FormattedText-Klasse mit den angegebenen Werten für Text, Kultur, Flussrichtung, Schriftart, Schriftgrad, Vordergrundpinsel und pixelsPerDip.

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

Initialisiert eine neue Instanz der FormattedText-Klasse mit dem angegebenen Text, der angegebenen Kultur, der angegebenen Flussrichtung, der angegebenen Schriftart, dem angegebenen Schriftgrad, dem angegebenen Pinsel und dem angegebenen Zahlenersetzungsverhalten.

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

Initialisiert eine neue Instanz der FormattedText-Klasse mit den angegebenen Werten für Text, Kultur, Flussrichtung, Schriftart, Schriftgrad, Vordergrundpinsel, Verhalten bei Zahlenersetzung und pixelsPerDip.

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

Initialisiert eine neue Instanz der FormattedText-Klasse mit dem angegebenen Text, der angegebenen Kultur, der angegebenen Flussrichtung, der angegebenen Schriftart, dem angegebenen Schriftgrad, dem angegebenen Pinsel, dem angegebenen Zahlenersetzungsverhalten und dem angegebenen Textformatierungsmodus.

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

Initialisiert eine neue Instanz der FormattedText-Klasse mit den angegebenen Werten für Text, Kultur, Flussrichtung, Schriftart, Schriftgrad, Vordergrundpinsel, Verhalten bei Zahlenersetzung und pixelsPerDip.

Eigenschaften

Baseline

Ruft den Abstand zwischen dem oberen Rand der ersten Zeile und der Baseline der ersten Zeile eines FormattedText-Objekts ab.

Extent

Ruft den Abstand zwischen dem obersten gezeichneten Pixel der ersten Zeile und dem untersten gezeichneten Pixel der letzten Zeile ab.

FlowDirection

Ruft die FlowDirection eines FormattedText-Objekts ab oder legt diese fest.

Height

Ruft den Abstand zwischen dem oberen Rand der ersten Zeile und dem unteren Rand der letzten Zeile des FormattedText-Objekts ab.

LineHeight

Ruft die Zeilenhöhe oder den Zeilenabstand von Textzeilen ab.

MaxLineCount

Ruft die maximale Anzahl der anzuzeigenden Zeilen ab oder legt diese fest. Text, der MaxLineCount überschreitet, wird nicht angezeigt.

MaxTextHeight

Ruft die maximale Höhe einer Textspalte ab oder legt diese fest.

MaxTextWidth

Ruft die maximale Textbreite für (Länge) für eine Textzeile ab oder legt diese fest.

MinWidth

Ruft die kleinste mögliche Textbreite ab, die den angegebenen Textinhalt vollständig enthalten kann.

OverhangAfter

Ruft den Abstand zwischen dem unteren Rand der letzten Textzeile und dem untersten gezeichneten Pixel ab.

OverhangLeading

Ruft den maximalen Abstand zwischen dem führenden Ausrichtungspunkt und dem führenden gezeichneten Pixel einer Zeile ab.

OverhangTrailing

Ruft den maximalen Abstand zwischen dem nachfolgenden gezeichneten Pixel und dem nachfolgenden Ausrichtungspunkt einer Zeile ab.

PixelsPerDip

Ruft die PixelsPerDip ab, wo der Text gerendert werden soll, oder legt sie fest.

Text

Ruft die anzuzeigende Textzeichenfolge ab.

TextAlignment

Ruft die Ausrichtung von Text in einem FormattedText-Objekt ab oder legt diese fest.

Trimming

Ruft das Verfahren ab, mit dem ausgelassener Text angegeben wird, oder legt dieses fest.

Width

Ruft die Breite zwischen dem führenden und nachfolgenden Ausrichtungspunkt einer Zeile ab, wobei folgende Leerraumzeichen nicht berücksichtigt werden.

WidthIncludingTrailingWhitespace

Ruft die Breite zwischen dem führenden und nachfolgenden Ausrichtungspunkt einer Zeile, ggf. einschließlich folgender Leerraumzeichen, ab.

Methoden

BuildGeometry(Point)

Gibt ein Geometry-Objekt zurück, das den formatierten Text, einschließlich aller Symbole und Textdekorationen, darstellt.

BuildHighlightGeometry(Point)

Gibt ein Geometry-Objekt zurück, das das umgebende Hervorhebungsfeld des formatierten Texts darstellt.

BuildHighlightGeometry(Point, Int32, Int32)

Gibt ein Geometry-Objekt zurück, das das umgebende Hervorhebungsfeld für eine angegebene Teilzeichenfolge des formatierten Texts darstellt.

Equals(Object)

Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist.

(Geerbt von Object)
GetHashCode()

Fungiert als Standardhashfunktion.

(Geerbt von Object)
GetMaxTextWidths()

Ruft ein Array von Textbreiten ab. Jedes Element im Array stellt die maximale Textbreite aufeinander folgender Textzeilen dar.

GetType()

Ruft den Type der aktuellen Instanz ab.

(Geerbt von Object)
MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.

(Geerbt von Object)
SetCulture(CultureInfo)

Legt das CultureInfo-Objekt für den gesamten Satz von Zeichen im FormattedText-Objekt fest.

SetCulture(CultureInfo, Int32, Int32)

Legt die CultureInfo für eine angegebene Teilmenge von Zeichen im FormattedText-Objekt fest.

SetFontFamily(FontFamily)

Legt die Schriftfamilie für ein FormattedText-Objekt fest.

SetFontFamily(FontFamily, Int32, Int32)

Legt die Schriftfamilie für eine angegebene Teilmenge von Zeichen im FormattedText-Objekt fest.

SetFontFamily(String)

Legt die Schriftfamilie für den gesamten Satz von Zeichen im FormattedText-Objekt fest.

SetFontFamily(String, Int32, Int32)

Legt die Schriftfamilie für eine angegebene Teilmenge von Zeichen im FormattedText-Objekt fest.

SetFontSize(Double)

Legt den Schriftgrad für den gesamten Satz von Zeichen im FormattedText-Objekt fest.

SetFontSize(Double, Int32, Int32)

Legt den Schriftgrad für eine angegebene Teilmenge von Zeichen im FormattedText-Objekt fest.

SetFontStretch(FontStretch)

Legt den Wert der Schriftartstreckung für den gesamten Satz von Zeichen im FormattedText-Objekt fest.

SetFontStretch(FontStretch, Int32, Int32)

Legt den Wert der Schriftartstreckung für eine angegebene Teilmenge von Zeichen im FormattedText-Objekt fest.

SetFontStyle(FontStyle)

Legt den Schriftschnitt für den gesamten Satz von Zeichen im FormattedText-Objekt fest.

SetFontStyle(FontStyle, Int32, Int32)

Legt den Schriftschnitt für eine angegebene Teilmenge von Zeichen im FormattedText-Objekt fest.

SetFontTypeface(Typeface)

Legt die Schriftart für den gesamten Satz von Zeichen im FormattedText-Objekt fest.

SetFontTypeface(Typeface, Int32, Int32)

Legt die Schriftart für eine angegebene Teilmenge von Zeichen im FormattedText-Objekt fest.

SetFontWeight(FontWeight)

Legt die Schriftbreite für den gesamten Satz von Zeichen im FormattedText-Objekt fest.

SetFontWeight(FontWeight, Int32, Int32)

Ändert das FontWeight für angegebenen Text in einem FormattedText-Objekt.

SetForegroundBrush(Brush)

Ändert den Vordergrund-Brush für ein gesamtes FormattedText-Objekt.

SetForegroundBrush(Brush, Int32, Int32)

Ändert den Vordergrund-Brush für angegebenen Text in einem FormattedText-Objekt.

SetMaxTextWidths(Double[])

Legt ein Array maximaler Textbreiten für die einzelnen Zeilen im FormattedText fest. Jedes Element im Array stellt die maximale Textbreite aufeinander folgender Textzeilen dar.

SetNumberSubstitution(NumberSubstitution)

Legt das Zahlenersetzungsverhalten für den gesamten Satz von Zeichen im FormattedText-Objekt fest.

SetNumberSubstitution(NumberSubstitution, Int32, Int32)

Legt das Zahlenersetzungsverhalten für angegebenen Text in einem FormattedText-Objekt fest.

SetTextDecorations(TextDecorationCollection)

Legt das TextDecorationCollection-Objekt für den gesamten Satz von Zeichen im FormattedText-Objekt fest.

SetTextDecorations(TextDecorationCollection, Int32, Int32)

Legt die TextDecorationCollection für angegebenen Text in einem FormattedText-Objekt fest.

ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.

(Geerbt von Object)

Gilt für

Siehe auch