Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2007.09.30;
Скачать: [xml.tar.bz2];

Вниз

Как выравнять текст по левому краю   Найти похожие ветки 

 
-=Le][=- ©   (2007-09-03 16:05) [0]

Процедура ТBitmap.Canvas.TextOut(Х,У,Text) выводит текст от точки Х,У в право (выравнивает по правому краю).
А как выводить текст слева от этой точки (выравнять по левому краю)?
Изначально в код нельзя внести поправку (dx,dy), так как не известна ширина текста (ни набор символов, ни шрифт)!


 
@!!ex ©   (2007-09-03 16:11) [1]

> так как не известна ширина текста (ни набор символов, ни
> шрифт)!

x:=left+(width - Canvas.TextWidth(S)) div 2;
y:=top+(height - Canvas.TextHeight(S)) div 2;

Где x y - искомые координаты, куда потом выводим текст.
left и top - координаты области выравнивания.
width и height - высота и ширина области выравнивания.
S - строка для вывода


 
Инс ©   (2007-09-03 16:12) [2]

см DrawText

PS: TextOut, кстати, выравнивает текст по левому краю. выводит текст от точки Х,У в право - это называется именно выравнивание по левому краю.


 
-=Le][=- ©   (2007-09-03 16:26) [3]

Инс
Перепутал!


 
homm ©   (2007-09-03 16:26) [4]

> Процедура ТBitmap.Canvas.TextOut(Х,У,Text) выводит текст
> от точки Х,У в право (выравнивает по правому краю).

Она его не выравнивает, она его тупо фигачит в дну строку.


 
Инс ©   (2007-09-03 16:29) [5]

Так что, DrawText с флагом DT_RIGHT не помогает?


 
-=Le][=- ©   (2007-09-03 16:47) [6]

Инс
Помогло! Спасибо!



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

Форум: "Начинающим";
Текущий архив: 2007.09.30;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.04 c
2-1188929716
Slip
2007-09-04 22:15
2007.09.30
Сбой при запуске Delphi


6-1170397167
Ural_angel
2007-02-02 09:19
2007.09.30
Socket и Stream


10-1137574629
Bratskiy
2006-01-18 11:57
2007.09.30
Поиск в Word


1-1184932927
Ice-T
2007-07-20 16:02
2007.09.30
Приложение и его главное окно - странный эффект


15-1188581516
Alex.rus
2007-08-31 21:31
2007.09.30
DOS





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский