Russian Belarusian English German Japanese Ukrainian

TextRect

CuBook05

Описание

Метод TextRect пишет строку текста Text на канве, начиная с позиции с координатами (X, Y) - это левый верхний угол надписи. Часть текста, не помещающаяся в прямоугольную область Rect, усекается. Надпись делается в соответствии с текущими установками шрифта Font. Пространство внутри области Rect закрашивается текущей кистью Brash.
Для выравнивания позиции текста внутри области на канве можно использовать методы, дающие перед выводом высоту и длину текста в пикселах TextExtent, TextHeight и TextWidth.
 
Классы

TCanvas
 
Прототип

void __fastcall TextRect(const Windows::TReet &Ract, int X, int Y, const AnsiString Text);
 
Пример

Пример рисует в заданном месте канвы компонента Image1 красный прямоугольник и внутри него в центре пишет методом TextRect текст, введенный пользователем в окно редактирования Edit1. Если текст оказывается длиннее ширины прямоугольника, то он усекается. В данном примере будет видна только середина текста, так как текст выровнен по центру прямоугольника.
int X1=100,Y1=100,X2=250,Y2=150;
String st = Edit1->Text;
Image1->Canvas->Brush->Color = clRed;
Image1->Canvas->TextRect(Rect(X1,Y1,X2,Y2),X1+(X2-X1-Image1->Canvas->TextWidth(st)) / 2, Y1+(Y2-Y1-Image1->Canvas->TextHeight(st)) / 2, st);
 
Скриншот

Пример - TextRect
Если заметили ошибку, выделите фрагмент текста и нажмите Ctrl+Enter

Добавить комментарий