FormattedText.BuildGeometry(Point) Methode

Definition

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

public:
 System::Windows::Media::Geometry ^ BuildGeometry(System::Windows::Point origin);
public System.Windows.Media.Geometry BuildGeometry(System.Windows.Point origin);
member this.BuildGeometry : System.Windows.Point -> System.Windows.Media.Geometry
Public Function BuildGeometry (origin As Point) As Geometry

Parameter

origin
Point

Der obere linke Ursprung der resultierenden Geometrie.

Gibt zurück

Die Geometry Objektdarstellung des formatierten Texts.

Beispiele

Das folgende Beispiel zeigt, wie Sie ein FormattedText Objekt erstellen und die Geometrien des formatierten Texts und des umgebenden Felds abrufen.

/// <summary>
/// Create the outline geometry based on the formatted text.
/// </summary>
public void CreateText()
{
    System.Windows.FontStyle fontStyle = FontStyles.Normal;
    FontWeight fontWeight = FontWeights.Medium;

    if (Bold) fontWeight = FontWeights.Bold;
    if (Italic) fontStyle = FontStyles.Italic;

    // Create the formatted text based on the properties set.
    FormattedText formattedText = new FormattedText(
        Text,
        CultureInfo.GetCultureInfo("en-us"),
        FlowDirection.LeftToRight,
        new Typeface(
            Font,
            fontStyle,
            fontWeight,
            FontStretches.Normal),
        FontSize,
        System.Windows.Media.Brushes.Black // This brush does not matter since we use the geometry of the text. 
        );

    // Build the geometry object that represents the text.
    _textGeometry = formattedText.BuildGeometry(new System.Windows.Point(0, 0));

    // Build the geometry object that represents the text highlight.
    if (Highlight)
    {
        _textHighLightGeometry = formattedText.BuildHighlightGeometry(new System.Windows.Point(0, 0));
    }
}
''' <summary>
''' Create the outline geometry based on the formatted text.
''' </summary>
Public Sub CreateText()
    Dim fontStyle As FontStyle = FontStyles.Normal
    Dim fontWeight As FontWeight = FontWeights.Medium

    If Bold = True Then
        fontWeight = FontWeights.Bold
    End If
    If Italic = True Then
        fontStyle = FontStyles.Italic
    End If

    ' Create the formatted text based on the properties set.
    Dim formattedText As New FormattedText(Text, CultureInfo.GetCultureInfo("en-us"), FlowDirection.LeftToRight, New Typeface(Font, fontStyle, fontWeight, FontStretches.Normal), FontSize, Brushes.Black) ' This brush does not matter since we use the geometry of the text.

    ' Build the geometry object that represents the text.
    _textGeometry = formattedText.BuildGeometry(New Point(0, 0))

    ' Build the geometry object that represents the text highlight.
    If Highlight = True Then
        _textHighLightGeometry = formattedText.BuildHighlightGeometry(New Point(0, 0))
    End If
End Sub

Hinweise

Wenn Text in ein Geometry Objekt konvertiert wird, handelt es sich nicht mehr um eine Auflistung von Zeichen . Sie können die Zeichen in der Textzeichenfolge nicht ändern. Sie können jedoch die Darstellung des konvertierten Texts durch Ändern der Strich- und Füllungseigenschaften ändern.

Die folgenden Beispiele veranschaulichen verschiedene Möglichkeiten zum Erstellen visueller Effekte durch Ändern des Strichs und der Füllung von konvertierten Text.

Text mit unterschiedlichen Farben für Füllung und Strich Beispiel für das Festlegen von Strich und Füllung auf verschiedene Farben

Text mit Bildpinsel, der auf Strichtext angewendet wird Beispiel für einen Bildpinsel, der auf den Strich angewendet wird

Text, der in ein Geometry Objekt konvertiert und gerendert wird, sieht möglicherweise nicht wie der direkt gerenderte Text aus:

  • Text, der in ein Geometry Objekt konvertiert wird, wird nicht mit ClearType gerendert. Darüber hinaus wird der Basisplan der konvertierten Daten nicht an ein ganzes Anzeigepixel angedockt.

  • Kleine Schriftarten, z. B. solche, die häufig im Textkörper verwendet werden, verlieren möglicherweise die Lesbarkeit, erscheinen unscharf und variieren in der Darstellung.

Gilt für: