Freigeben über


Gewusst wie: Zeichnen von Text in grafischen Elementen

Im folgenden Beispiel wird gezeigt, wie Text mithilfe eines DrawingContext-Objekts in ein DrawingVisual gezeichnet wird. Zeichnungskontext wird durch Aufrufen der RenderOpen-Methode eines DrawingVisual-Objekts zurückgegeben. Sie können Grafiken und Text in einen Zeichnungskontext zeichnen.

Um Text im Zeichnungskontext zu zeichnen, verwenden Sie die DrawText-Methode eines DrawingContext-Objekts. Wenn Sie den Text in den Zeichnungskontext gezeichnet haben, rufen Sie die Close-Methode auf, um den Zeichnungskontext zu schließen und den Inhalt beizubehalten.

Beispiel

        ' Create a DrawingVisual that contains text.
        Private Function CreateDrawingVisualText() As DrawingVisual
            ' Create an instance of a DrawingVisual.
            Dim drawingVisual As New DrawingVisual()

            ' Retrieve the DrawingContext from the DrawingVisual.
            Dim drawingContext As DrawingContext = drawingVisual.RenderOpen()

            ' Draw a formatted text string into the DrawingContext.
            drawingContext.DrawText(New FormattedText("Click Me!", CultureInfo.GetCultureInfo("en-us"), FlowDirection.LeftToRight, New Typeface("Verdana"), 36, Brushes.Black), New Point(200, 116))

            ' Close the DrawingContext to persist changes to the DrawingVisual.
            drawingContext.Close()

            Return drawingVisual
        End Function
// Create a DrawingVisual that contains text.
private DrawingVisual CreateDrawingVisualText()
{
    // Create an instance of a DrawingVisual.
    DrawingVisual drawingVisual = new DrawingVisual();

    // Retrieve the DrawingContext from the DrawingVisual.
    DrawingContext drawingContext = drawingVisual.RenderOpen();

    // Draw a formatted text string into the DrawingContext.
    drawingContext.DrawText(
       new FormattedText("Click Me!",
          CultureInfo.GetCultureInfo("en-us"),
          FlowDirection.LeftToRight,
          new Typeface("Verdana"),
          36, System.Windows.Media.Brushes.Black),
          new System.Windows.Point(200, 116));

    // Close the DrawingContext to persist changes to the DrawingVisual.
    drawingContext.Close();

    return drawingVisual;
}
HinweisHinweis

Das vollständige Codebeispiel, aus dem das vorangehende Codebeispiel extrahiert wurde, finden Sie unter Beispiel für Treffertests mit "DrawingVisuals".