Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.11.26;
Скачать: CL | DM;

Вниз

Узнать длину форматированого текста   Найти похожие ветки 

 
Krants   (2006-10-11 18:34) [0]

Как можно узнать длину строки(и.в. в пикселях) зная ее формат(шрифт, высота, и.т.д.)?


 
DrPass ©   (2006-10-11 18:43) [1]

GetTextExtentPoint32 для WinAPI. И соотв. метод у TCanvas


 
Krants   (2006-10-11 19:00) [2]

сенкс


 
Anatoly Podgoretsky ©   (2006-10-12 00:38) [3]

TextWidth


 
Krants   (2006-10-12 10:48) [4]

вот нашел примерчик примерчик:
var
 memDC : HDC;
 size : TSize;
 oldFont : HFONT;

 memDC := CreateCompatibleDC (0);
 oldFont := SelectObject (memDC, font.Handle);
 GetTextExtentPoint32 (memDC, PChar (st), Length (st), size);

а как с применением данных функций можно задать определенный шрифт, к примеру "Arial"?


 
DrPass ©   (2006-10-12 10:56) [5]

В данном примерчике устанавливаются параметры текущего шрифта формы (font.Handle). Какой шрифт в свойстве Font укажешь, тот и будет.


 
Krants   (2006-10-12 11:05) [6]

Понятно, но в моем случае я не испльзую никаких компонентов включающих данное свойство.
Что-бы было понятно, мне нужно это значение для указания ширины столбца таблицы в Word`е!


 
DrPass ©   (2006-10-12 12:19) [7]

Тебе нужно создать шрифт, настроить его параметры и подставить его дескриптор в SelectObject.
Либо CreateFont/CreateFontIndirect (для любителей WinAPI), либо (ИМХО, проще и удобнее) с помощью VCL:
var font: TFont;
font:= TFont.Create;


 
Desdechado ©   (2006-10-12 13:20) [8]

DrawText c параметром CALC_RECT



Страницы: 1 вся ветка

Текущий архив: 2006.11.26;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.049 c
1-1161071126
Juice
2006-10-17 11:45
2006.11.26
fsStayOnTop только для моих окон


6-1152140733
Корешь
2006-07-06 03:05
2006.11.26
icmp в indy 10


1-1160395846
pasha_golub
2006-10-09 16:10
2006.11.26
deprecated directive


3-1159352451
Stanislav
2006-09-27 14:20
2006.11.26
Работа через интернет


1-1161011964
BorisMor
2006-10-16 19:19
2006.11.26
Матричный принтер