Graphics::MeasureString(constWCHAR*,INT,constFont*,constRectF&,constStringFormat*,RectF*,INT*,INT*) (gdiplusgraphics.h)

Метод Graphics::MeasureString измеряет экстент строки в указанном прямоугольнике шрифта, формата и макета.

Синтаксис

Status MeasureString(
  const WCHAR        *string,
  INT                length,
  const Font         *font,
  const RectF &      layoutRect,
  const StringFormat *stringFormat,
  RectF              *boundingBox,
  INT                *codepointsFitted,
  INT                *linesFilled
);

Параметры

string

Указатель на строку расширенных символов для измерения.

Важно Для двунаправленных языков, таких как арабский, длина строки не должна превышать 2046 символов.

length

Целое число, указывающее количество символов в строковом массиве. Параметр length может быть равен -1, если строка заканчивается null.

font

Указатель на объект Font , указывающий имя семейства, размер и стиль шрифта, применяемого к строке.

layoutRect

Ссылка на прямоугольник, ограничивающий строку.

stringFormat

Указатель на объект StringFormat , указывающий сведения о макете, такие как выравнивание, обрезка, позиции табуляции и т. д.

boundingBox

Указатель на объект RectF , который получает прямоугольник, ограничивающий строку.

codepointsFitted

Необязательный элемент. Указатель на INT , получающий количество символов, которые фактически помещаются в прямоугольник макета. Значением по умолчанию является указатель NULL .

linesFilled

Необязательный элемент. Указатель на INT , получающий количество строк, помещаемых в прямоугольник макета. Значением по умолчанию является указатель NULL .

Возвращаемое значение

В случае успешного выполнения метода возвращается ОК, который является элементом перечисления Status .

Если метод завершается ошибкой, он возвращает один из других элементов перечисления Status .

Remarks

Примеры

В следующем примере измеряется размер строки, а затем рисуется прямоугольник, представляющий этот размер.

VOID Example_MeasureString2(HDC hdc)
{
   Graphics graphics(hdc);
   // Set up the string.
   WCHAR string[] = L"Measure Text";
   Font font(L"Arial", 16);
   RectF layoutRect(0.0f, 0.0f, 100.0f, 50.0f);
   StringFormat format;
   format.SetAlignment(StringAlignmentFar);
   RectF boundRect;
   // Measure the string.
   graphics.MeasureString(string, 12, &font, layoutRect, &format, &boundRect);
   // Draw a rectangle that represents the size of the string.
   graphics.DrawRectangle(&Pen(Color(255, 0, 0, 0)), boundRect);
}

Требования

   
Верхняя часть gdiplusgraphics.h

См. также раздел

Методы DrawString

Шрифт

Графика

RectF

Stringformat