Unser nachfolgender Tipp zeigt, wie sich ein beliebiger Text in einer beliebigen Schriftart um einen beliebigen Winkel (bspw. 90° gegen den Uhrzeigersinn) ausgeben lässt. Die Ausgabe kann auf einer Form, einer PictureBox oder auch auf den Drucker erfolgen - bzw. auf allen Controls/Objekten mit einem Graphics-Objekt. Imports System.Drawing.Drawing2D ... ''' <summary> ''' Gibt einen Text in einem beliebigen Winkel aus ''' </summary> ''' <param name="gr">Graphics-Objekt, auf dem die Ausgabe erfolgen soll</param> ''' <param name="Text">Text, der ausgegeben werden soll</param> ''' <param name="x">x-Position der Text-Ausgabe</param> ''' <param name="y">y-Position der Text-Ausgabe</param> ''' <param name="Winkel">Winkel für die Text-Ausgabe (Bsp. 90, 45, ...)</param> ''' <param name="Schrift">Font-Objekt für die Text-Ausgabe</param> ''' <param name="Farbe">Farbe des Textes</param> Public Sub PrintRotatedText(ByRef gr As Graphics, ByVal Text As String, _ ByVal x As Integer, ByVal y As Integer, ByVal Winkel As Single, _ ByVal Schrift As Font, ByVal Farbe As Brush) Dim oldState As GraphicsState = gr.Save gr.ResetTransform() gr.RotateTransform(Winkel) gr.TranslateTransform(x, y, MatrixOrder.Append) gr.DrawString(Text, Schrift, Farbe, 0, 0) gr.Restore(oldState) End Sub Aufrufbeispiele: ' Im Paint Ereignis der Form Private Sub Form1_Paint(ByVal sender As Object, _ ByVal e As System.Windows.Forms.PaintEventArgs) Handles Me.Paint PrintRotatedText(e.Graphics, "Text 90° gedreht", 200, 200, -90, _ New Font("Tahoma", 12), Brushes.BlueViolet) End Sub ' Textausgabe per Button-Click in PictureBox Private Sub Button1_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles Button1.Click PrintRotatedText(Graphics.FromHwnd(PictureBox1.Handle), _ "Hallo", 50, 100, -45, Me.Font, Brushes.Blue) End Sub Dieser Tipp wurde bereits 5.448 mal aufgerufen.
Anzeige
![]() ![]() ![]() (einschl. Beispielprojekt!) Ein absolutes Muss - Geballtes Wissen aus mehr als 8 Jahren vb@rchiv! - nahezu alle Tipps & Tricks und Workshops mit Beispielprojekten - Symbol-Galerie mit mehr als 3.200 Icons im modernen Look Weitere Infos - 4 Entwickler-Vollversionen (u.a. sevFTP für .NET), Online-Update-Funktion u.v.m. |
vb@rchiv CD Vol.6 ![]() ![]() Geballtes Wissen aus mehr als 8 Jahren vb@rchiv! Online-Update-Funktion Entwickler-Vollversionen u.v.m. Tipp des Monats ![]() Dieter Otter Zeilen einer MultiLine-TextBox ermitteln (VB.NET) Dieser Zipp zeigt, wie man die Zeilen einer MultiLine-TextBox exakt so ermitteln kann, wie diese auch in der TextBox dargestellt werden. sevOutBar 4.0 ![]() Vertikale Menüleisten á la Outlook Erstellen von Outlook ähnlichen Benutzer- interfaces - mit beliebig vielen Gruppen und Symboleinträgen. Moderner OfficeXP-Style mit Farbverläufen, Balloon-Tips, u.v.m. |
||||||||||||||||
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein. |