![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как вывести текст по центру на canvas. [D7]
Nikfel © (2007-06-28 17:25:00)Пожалуйста помогите. Мне надо создать компонент tlabel, затем нарисовать на нем (разноцветный фон), при этом текст введенный в caption закрашивается. А мне надо ввести текст по центру, но при этом учитывать что с боку будет изображение и текст надо будет еще сместить на размер изображения. Заранее спасибо.
Однокамушкин (2007-06-29 16:35:00) [1]http://msdn2.microsoft.com/en-us/library/ms533933.aspx
Nikfel (2007-06-28 18:21:00) [2]
> Поясни. Кем закрашиваеться, и чем закрашиваеться.
>
Закрашивал карандашом pen. Рисовал линии разных цветов.
Nikfel (2007-06-28 18:15:00) [3]Спасибо, разобрался. Вот правильный код:
label1.Canvas.TextOut(((Label1.Width-label1.Canvas.TextWidth('ля-ля-ля')) div 2)+(image1.Width div 2), (label1.Height-label1.Canvas.TextHeight('ля-ля-ля')) div 2, 'ля-ля-ля');
Изображение должно быть выведено на canvas по левому краю, иначе текст будет не по центру.
homm (2007-06-28 17:35:00) [4]> при этом текст введенный в caption закрашивается
Поясни. Кем закрашиваеться, и чем закрашиваеться.
> А мне надо ввести текст по центру, но при этом учитывать
> что с боку будет изображение
Текст.Лево = (ПолеДляВвода.Ширина - Текст.Ширина) поделить 2 - Изображение.Ширина;
Текст.Верх = (ПолеДляВвода.Высота - Текст.Высота) поделить 2 - Изображение.Высота;
Ega23 (2007-06-28 17:33:00) [5]
Canvas.TextOut((Label.Width - Image.Width - Canvas.GetFontWidth('ля-ля-ля')) div 2, Y, 'ля-ля-ля')
Jeer (2007-06-28 17:30:00) [6]Карандаши купи и резинку.