Procedura: creare testo disposto su più righe in un rettangoloHow to: Draw Wrapped Text in a Rectangle

È possibile disegnare il testo a capo in un rettangolo con il DrawString metodo di overload di Graphics classe che accetta un Rectangle o RectangleF parametro.You can draw wrapped text in a rectangle by using the DrawString overloaded method of the Graphics class that takes a Rectangle or RectangleF parameter. Si utilizzerà inoltre un Brush e Font.You will also use a Brush and a Font.

È possibile creare testo sottoposta a wrapping in un rettangolo con il DrawText metodo di overload di TextRenderer che accetta un Rectangle e un TextFormatFlags parametro.You can also draw wrapped text in a rectangle by using the DrawText overloaded method of the TextRenderer that takes a Rectangle and a TextFormatFlags parameter. Si utilizzerà inoltre un Color e Font.You will also use a Color and a Font.

Nella figura seguente viene illustrato l'output di testo nel rettangolo quando si utilizza il DrawString metodo.The following illustration shows the output of text drawn in the rectangle when you use the DrawString method.

Testo caratteriFonts Text

Per disegnare il wrapping di testo in un rettangolo con GDI+To draw wrapped text in a rectangle with GDI+

  1. Utilizzare il DrawString metodo di overload, passare il testo desiderato, Rectangle o RectangleF, Font e Brush.Use the DrawString overloaded method, passing the text you want, Rectangle or RectangleF, Font and Brush.

    string text1 = "Draw text in a rectangle by passing a RectF to the DrawString method.";
    using (Font font1 = new Font("Arial", 12, FontStyle.Bold, GraphicsUnit.Point))
    {
        RectangleF rectF1 = new RectangleF(30, 10, 100, 122);
        e.Graphics.DrawString(text1, font1, Brushes.Blue, rectF1);
        e.Graphics.DrawRectangle(Pens.Black, Rectangle.Round(rectF1));
    }
    
    Dim text1 As String = "Draw text in a rectangle by passing a RectF to the DrawString method."
    Dim font1 As New Font("Arial", 12, FontStyle.Bold, GraphicsUnit.Point)
    Try
        Dim rectF1 As New RectangleF(30, 10, 100, 122)
        e.Graphics.DrawString(text1, font1, Brushes.Blue, rectF1)
        e.Graphics.DrawRectangle(Pens.Black, Rectangle.Round(rectF1))
    Finally
        font1.Dispose()
    End Try
    

Per disegnare il wrapping di testo in un rettangolo con GDITo draw wrapped text in a rectangle with GDI

  1. Utilizzare il TextFormatFlags il valore di enumerazione per specificare il testo deve essere racchiuso tra i DrawText metodo di overload, passare il testo desiderato, Rectangle, Font e Color.Use the TextFormatFlags enumeration value to specify the text should be wrapped with the DrawText overloaded method, passing the text you want, Rectangle, Font and Color.

    string text2 = "Draw text in a rectangle by passing a RectF to the DrawString method.";
    using (Font font2 = new Font("Arial", 12, FontStyle.Bold, GraphicsUnit.Point))
    {
        Rectangle rect2 = new Rectangle(30, 10, 100, 122);
    
        // Specify the text is wrapped.
        TextFormatFlags flags = TextFormatFlags.WordBreak;
        TextRenderer.DrawText(e.Graphics, text2, font2, rect2, Color.Blue, flags);
        e.Graphics.DrawRectangle(Pens.Black, Rectangle.Round(rect2));
    
    }
    
    Dim text2 As String = _
        "Draw text in a rectangle by passing a RectF to the DrawString method."
    Dim font2 As New Font("Arial", 12, FontStyle.Bold, GraphicsUnit.Point)
    Try
        Dim rect2 As New Rectangle(30, 10, 100, 122)
        
        ' Specify the text is wrapped.
        Dim flags As TextFormatFlags = TextFormatFlags.WordBreak
        TextRenderer.DrawText(e.Graphics, text2, font2, rect2, Color.Blue, flags)
        e.Graphics.DrawRectangle(Pens.Black, Rectangle.Round(rect2))
    Finally
        font2.Dispose()
    End Try
    

Compilazione del codiceCompiling the Code

Gli esempi precedenti richiedono:The previous examples require:

Vedere ancheSee Also

Procedura: Creare testo con GDIHow to: Draw Text with GDI
Uso di tipi di carattere e testoUsing Fonts and Text
Procedura: Creare caratteri e gruppi di caratteriHow to: Construct Font Families and Fonts
Procedura: Creare testo in una posizione specificataHow to: Draw Text at a Specified Location