DrawString Method (String, Font, Brush, RectangleF, StringFormat)

Graphics.DrawString Method (String, Font, Brush, RectangleF, StringFormat)


Draws the specified text string in the specified rectangle with the specified Brush and Font objects using the formatting attributes of the specified StringFormat.

Namespace:   System.Drawing
Assembly:  System.Drawing (in System.Drawing.dll)

public void DrawString(
	string s,
	Font font,
	Brush brush,
	RectangleF layoutRectangle,
	StringFormat format


Type: System.String

String to draw.

Type: System.Drawing.Font

Font that defines the text format of the string.

Type: System.Drawing.Brush

Brush that determines the color and texture of the drawn text.

Type: System.Drawing.RectangleF

RectangleF structure that specifies the location of the drawn text.

Type: System.Drawing.StringFormat

StringFormat that specifies formatting attributes, such as line spacing and alignment, that are applied to the drawn text.

Exception Condition

brush is null.


s is null.

The text represented by the s parameter is drawn inside the rectangle represented by the layoutRectangle parameter. If the text does not fit inside the rectangle, it is truncated at the nearest word, unless otherwise specified with the format parameter.

The following code example is designed for use with Windows Forms, and it requires PaintEventArgse, which is a parameter of the Paint event handler. The code performs the following actions:

  • Creates a text string to draw.

  • Defines the font as Arial (16pt).

  • Creates a solid, black brush to draw with.

  • Creates a rectangle in which to draw the text.

  • Draws the rectangle to the screen.

  • Sets the format of the string to center it within the rectangle.

  • Draws the string to the screen using the font, brush, and destination rectangle.

public void DrawStringRectangleFFormat(PaintEventArgs e)

    // Create string to draw.
    String drawString = "Sample Text";

    // Create font and brush.
    Font drawFont = new Font("Arial", 16);
    SolidBrush drawBrush = new SolidBrush(Color.Black);

    // Create rectangle for drawing.
    float x = 150.0F;
    float y = 150.0F;
    float width = 200.0F;
    float height = 50.0F;
    RectangleF drawRect = new RectangleF(x, y, width, height);

    // Draw rectangle to screen.
    Pen blackPen = new Pen(Color.Black);
    e.Graphics.DrawRectangle(blackPen, x, y, width, height);

    // Set format of string.
    StringFormat drawFormat = new StringFormat();
    drawFormat.Alignment = StringAlignment.Center;

    // Draw string to screen.
    e.Graphics.DrawString(drawString, drawFont, drawBrush, drawRect, drawFormat);

.NET Framework
Available since 1.1
Return to top
© 2015 Microsoft