Skip to main content

BrickGraphics.MeasureString(String, Int32, StringFormat) Method

Measures the specified string when drawn with the specified maximum width and format.

Namespace: DevExpress.XtraPrinting

Assembly: DevExpress.Printing.v22.2.Core.dll

NuGet Packages: DevExpress.Printing.Core, DevExpress.Win.Dashboard.Design


public SizeF MeasureString(
    string text,
    int width,
    StringFormat stringFormat


Name Type Description
text String

String to measure.

width Int32

An integer value specifying the maximum width of the measured string.

stringFormat StringFormat

The formatting settings for the measured string.


Type Description

This method returns a SizeF structure that represents the size, measured in pixels.


This method measures a text string specified via the parameter. The resulting string size is determined not only by the string’s contents, but also by the BrickGraphics.Font property value. The measured string size also depends on the current string format. If measured string width exceeds the width parameter value, then the height parameter value of the returned SizeF structure is increased, in order to fit inside the measured string.


This example calculates the dimensions of the rectangle to fit the specified string with a limitation on maximum width (75 measurement units). The calculation is performed according to the specified StringFormat parameter. Then, a report with the VisualBrick, containing the string, is created and displayed.



A complete sample project is available in the DevExpress Code Examples database at

using DevExpress.XtraPrinting;
// ...

    VisualBrick visBrick;
    BrickGraphics brickGraph = printingSystem1.Graph;
    string s = "Developer Express Inc.";

    // Specify the vertical alignment.
    StringFormat sFormat = new StringFormat(StringFormatFlags.DirectionVertical);

    // Measure the string with the specified format and maximum width.
    SizeF sz = brickGraph.MeasureString(s,75,sFormat);

    // Start the report generation.

    // Specify a page area.
    brickGraph.Modifier = BrickModifier.Detail;

    // Set default vertical alignment for the text in bricks.
    brickGraph.DefaultBrickStyle.StringFormat = new BrickStringFormat(sFormat);

    // Create a rectangle of the calculated size plus the border dimensions.
    RectangleF rect = new RectangleF(new PointF(0, 0), sz);
    rect = brickGraph.DefaultBrickStyle.InflateBorderWidth(rect, GraphicsDpi.Pixel);
    rect.Offset(-rect.X, -rect.Y);

    // Add a text brick to the report.
    visBrick = brickGraph.DrawString(s, Color.Black, rect, BorderSide.All);

    // Finish the report generation.

    // Preview the report.
See Also