Tipp 0088 Text zeichnen mit GDI+
Autor/Einsender:
Datum:
  Michael Werner
04.10.2005
Entwicklungsumgebung:   VB.Net 2003
Framework:   1.1
Mit der Methode DrawString des Graphics-Objektes kann formatierter Text sowohl senkrecht als auch in einem beliebigen Winkel und normal waagerecht ausgegeben werden. Als Parameter werden neben dem eigentlichen Text ein Font (Schriftart, Schriftgröße)), ein Brush (ein einfarbiger Pinsel), sowie einen Punkt (linke obere und rechte untere Ecke des Punktes) der Methode DrawString übergeben.
Um Text senkrecht zu zeichnen, wird eine StringFormat-Instanz mit entsprechendem Flag (StringFormatFlags.DirectionVertical) übergeben. Eine Text-Ausgabe in einem Winkel ist über die Graphics.RotateTransform-Methode zu verwirklichen. Sie wendet die angegebene Drehung auf die Transformationsmatrix des Graphics-Objekts an. Gezeichnet wird im Ereignis Paint, damit das Gezeichnete auch nach Überdeckungen Bestand hat. Mit Dispose werden die Graphics-, Font- und Brush-Objekte wieder freigeben.
 
  Private Sub Form1_Paint(ByVal sender As Object, _
        ByVal e As System.Windows.Forms.PaintEventArgs) _
        Handles MyBase.Paint

    Dim objGraphics As Graphics
    objGraphics = Me.CreateGraphics()

    Dim TextFont1 As New Font("Arial Black", 36)
    Dim TextBrush1 As New SolidBrush(Color.MintCream)
    Dim TextPoint1 As New PointF(20, 150)
    objGraphics.DrawString("Hallo User!", TextFont1, _
          TextBrush1, TextPoint1)

    Dim TextFont2 As New Font("Courier New", 20)
    Dim TextBrush2 As New SolidBrush(Color.DarkBlue)
    Dim TextPoint2 As New PointF(0, 10)
    Dim MyStringFormat As New System.Drawing.StringFormat
    MyStringFormat.FormatFlags = _
          StringFormatFlags.DirectionVertical
    objGraphics.DrawString("Hallo User!", TextFont2, TextBrush2, _
          TextPoint2, MyStringFormat)

    Dim TextFont3 As New Font("Comic Sans Ms", 40)
    Dim TextBrush3 As New SolidBrush(Color.CornflowerBlue)
    Dim TextPoint3 As New PointF(40, 50)
    objGraphics.RotateTransform(-30)
    objGraphics.DrawString("Hallo User!", TextFont3, TextBrush3, _
          TextPoint3, MyStringFormat)

    objGraphics.Dispose()
    TextFont1.Dispose()
    TextFont2.Dispose()
    TextFont3.Dispose()
    TextBrush1.Dispose()
    TextBrush2.Dispose()
    TextBrush3.Dispose()
  End Sub
 
Weitere Links zum Thema
Figuren zeichnen und rotieren (GDI+)
Text spiegeln und scheren
Text im Winkel ausgeben

Windows-Version
98/SE
ME
NT
2000
XP
Vista
Win 7


Download  (6,2 kB) Downloads bisher: [ 712 ]

Vorheriger Tipp Zum Seitenanfang Nächster Tipp

Startseite | Tipps | Projekte | Tutorials | Bücherecke | VB-/VBA-Tipps | API-Referenz | Komponenten | VB.Net-Forum | VB/VBA-Forum | DirectX-Forum | Foren-Archiv | DirectX | Chat | Spielplatz | Links | Suchen | Stichwortverzeichnis | Feedback | Impressum

Seite empfehlen Bug-Report
Letzte Aktualisierung: Dienstag, 17. Januar 2012