![]() |
|
Модераторы: Poseidon, Snowy, bems, MetalFan |
![]()
|
|
| devmstr |
|
|||
![]() Developer ![]() ![]() Профиль Группа: Участник Сообщений: 879 Регистрация: 28.4.2004 Где: Ukraine Репутация: 2 Всего: 11 |
Как узнать размер в пикселях занимаевого текстом выведенным методом TextOut.
-------------------- Think different ©Steve Jobs ![]() |
|||
|
||||
| Illusion Dolphin |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1198 Регистрация: 3.5.2003 Репутация: 36 Всего: 63 |
your_object.canvas.textwidth('My text')
your_object.canvas.textheight('My text') Пример вывода текста по середине: var b:Tbitmap; /// b:=Tbitmap.create; b.width:=500; b.height:=600; b.pixelformat:=pf24bit; b.canvas.brush.color:=clwhite; b.canvas.pen.color:=clwhite; b.canvas.rectangle(0,0,500,600); // очищаем битмап b.canvas.font.name:='Arial'; b.canvas.font.size:=12; b.canvas.textout(b.width div 2-b.canvas.textwidth('My text'),b.height div 2-b.canvas.textheight('My text'), 'My Text'); form1.canvas.draw(0,0,b); b.free; b:=nil; //можно не указывать -------------------- В мире всего две бесконечности: вселенная и человеческая глупость... На счёт вселенной я не уверен. Шифрование и организация фотографий - Photo Database 4.5 |
|||
|
||||
| AriX |
|
||||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 311 Регистрация: 16.6.2003 Репутация: 5 Всего: 19 |
вот эта строчка немного неправильная
надо вот так
|
||||
|
|||||
| Illusion Dolphin |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1198 Регистрация: 3.5.2003 Репутация: 36 Всего: 63 |
Хм
a/2-b/2 = (a-b)/2 С точки зрения оптимизации так получилось действительно меньше на одно деление и округлений только одно -------------------- В мире всего две бесконечности: вселенная и человеческая глупость... На счёт вселенной я не уверен. Шифрование и организация фотографий - Photo Database 4.5 |
|||
|
||||
| x77 |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1255 Регистрация: 25.3.2002 Репутация: 19 Всего: 22 |
с точки зрения оптимизации лучше не "а / 2", а "а shr 1"
-------------------- Я никогда не сопротивлялся искушению, поскольку узнал: что мне не нравится, то меня не искушает. © Джордж Бернард Шоу (Ирландия) |
|||
|
||||
| x77 |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1255 Регистрация: 25.3.2002 Репутация: 19 Всего: 22 |
хотя div, по идее, к тому и сводится..... ну да есть кому поправить, слава богу
-------------------- Я никогда не сопротивлялся искушению, поскольку узнал: что мне не нравится, то меня не искушает. © Джордж Бернард Шоу (Ирландия) |
|||
|
||||
| devmstr |
|
|||
![]() Developer ![]() ![]() Профиль Группа: Участник Сообщений: 879 Регистрация: 28.4.2004 Где: Ukraine Репутация: 2 Всего: 11 |
Нет, конечно спасибо, но только я не понял все же как узнать размер выведенного изображения.
Просто потом не введенный текст нужно стереть, а стирать больше чем надо нет возможности(ну естественно страдает производительность). -------------------- Think different ©Steve Jobs ![]() |
|||
|
||||
| z-END |
|
|||
![]() прафесар™ ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3014 Регистрация: 13.3.2003 Где: Венья, Пиетари Репутация: 11 Всего: 102 |
magician так тебе размер изображения нужен или размер текста выведенного на канаве? если это то см Illusion Dolphin в первом же ответе написал на первой строчке ширину занимаемую текстом а на второй строчке высоту.
-------------------- Каждый чилавек пасвоему праф...а памоему НЕТ! |
|||
|
||||
| AriX |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 311 Регистрация: 16.6.2003 Репутация: 5 Всего: 19 |
Illusion Dolphin
|
|||
|
||||
![]()
|
| Правила форума "Delphi: Общие вопросы" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |