Skip to main content
All docs
V23.2

PdfGraphics.DrawString(String, DXFont, DXSolidBrush, Single, Single) Method

Draws text with the specified brush and font parameters at the specified point on a page.

Namespace: DevExpress.Pdf

Assembly: DevExpress.Pdf.v23.2.Drawing.dll

NuGet Package: DevExpress.Pdf.Drawing

Declaration

public void DrawString(
    string text,
    DXFont font,
    DXSolidBrush brush,
    float x,
    float y
)

Parameters

Name Type Description
text String

A text to draw.

font DXFont

A DXFont object that defines the text format.

brush DXSolidBrush

A DXSolidBrush object that determines the color and texture of the drawn text.

x Single

The x-coordinate in the world coordinate system of a point where you can draw text.

y Single

The y-coordinate in the world coordinate system of a point where you can draw text.

Remarks

Use the PdfGraphics.MeasureString method to calculate a size of the drawn text and a point where you can draw text.

The x and y parameters define the point where the text’s upper-left corner is located. Set the TextOrigin property to Baseline to make the x and y parameters define the point where the start of the text’s baseline is located. Set this property before the DrawString method call.

Use the UseKerning property to enable kerning in drawn text.

To draw a string on the PDF page, use one of the following methods:

PdfGraphics.AddToPageForeground, PdfGraphics.AddToPageBackground
These methods allow you to draw content on an existing page.
PdfDocumentProcessor.RenderNewPage
Draws content on a new page.

Example

The code sample below draws text in the center of an empty page:

using DevExpress.Pdf;
using System.Drawing;
using DevExpress.Drawing;
//...

using (var processor = new PdfDocumentProcessor())
{
    processor.CreateEmptyDocument();

    using (PdfGraphics graphics = processor.CreateGraphics())
    {
        // Obtain the first document page
        PdfPage page = processor.AddNewPage(PdfPaperSize.A4);
        PdfRectangle pageSize = page.CropBox;

        // Specify text to draw
        string text = "PDF Document API";
        using (DXSolidBrush textBrush = new DXSolidBrush(Color.FromArgb(255, Color.DarkOrange)))
        {
            DXFont font = new DXFont("Segoe UI", 20, DXFontStyle.Regular)
            // Calculate text size
            SizeF textSize = graphics.MeasureString(text, font);

            // Calculate a point where to draw text
            float x = (float)((pageSize.Width - textSize.Width) / 2);
            float y = (float)((pageSize.Height - textSize.Height) / 2);

            // Draw text at the calculated point
            graphics.DrawString(text, font, textBrush, x,y);

            // Add graphics content to the page foreground
            graphics.AddToPageForeground(page, 72, 72);
        }
    }
    processor.SaveDocument("result.pdf");
}

The following code snippet (auto-collected from DevExpress Examples) contains a reference to the DrawString(String, DXFont, DXSolidBrush, Single, Single) method.

Note

The algorithm used to collect these code examples remains a work in progress. Accordingly, the links and snippets below may produce inaccurate results. If you encounter an issue with code examples below, please use the feedback form on this page to report the issue.

See Also