|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
02.10.2019, 16:36 | #1 |
Форумчанин
Регистрация: 12.09.2008
Сообщений: 621
|
Canvas.TextOut вывод текста от средины к краям
Здравствуйте!
Подскажите, пожалуйста, можно ли сделать так, чтобы средина текста, выводимого с помощью Canvas.TextOut, всегда была в одной точке? |
02.10.2019, 17:16 | #2 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
старый тест стирать, но новый выводить, при этом попробуйте взять ширину
ww := Canvas.TextWidth("Тут Ваш текст"); и дальше вычисляете позицию вывода думаю что с моноширным шрифтом будет выглядеть более естественно. p.s. я не профи в рисовании на канве, пишу чисто умозрительно. примерчик набросал: Project1.rar test1.jpg Последний раз редактировалось Serge_Bliznykov; 02.10.2019 в 17:53. |
02.10.2019, 18:28 | #3 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
api-шный DrawText хендл канвас передается параметром, последний параметр регулирует расположение текста как по высоте, так и по ширине без всяких вычислений
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
06.10.2019, 21:07 | #4 | |
Форумчанин
Регистрация: 12.09.2008
Сообщений: 621
|
Цитата:
Вот, посмотрите, пожалуйста..., прикрепляю тестовый проект... Картинка появляется при вводе текста. |
|
06.10.2019, 22:04 | #5 |
Форумчанин
Регистрация: 12.09.2008
Сообщений: 621
|
Первый скришот, как сейчас выводится, а два других - как должно выходить.. Можно ли так сделать?
|
07.10.2019, 02:19 | #6 |
ПШП
Участник клуба
Регистрация: 15.07.2013
Сообщений: 1,889
|
2 Женя32
Обратите внимание на совет Аватар #3. |
07.10.2019, 18:37 | #7 |
Форумчанин
Регистрация: 12.09.2008
Сообщений: 621
|
Что-то у меня не получается...
Параметры правильно задаю?: Код:
|
07.10.2019, 18:49 | #8 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
чего это за rect такой нулевой весь из себя?
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
07.10.2019, 19:54 | #9 |
Форумчанин
Регистрация: 12.09.2008
Сообщений: 621
|
|
07.10.2019, 20:31 | #10 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
А в справке что по поводу rect? Для чего он используется? Зачем DT_CALCRECT и DT_NOPREFIX используешь? Тебе нужен DT_CENTER и в rect координаты области, в которой разместить текст. Возможно еще DT_VCENTER
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Последний раз редактировалось Аватар; 07.10.2019 в 20:36. |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Вывод текста из Edit в Canvas | Женя32 | Общие вопросы Delphi | 28 | 23.06.2019 19:10 |
Canvas->TextOut | dimaprog | C++ Builder | 2 | 02.11.2018 20:12 |
Delphi DX10 вывод текста на Canvas | vohuanrok | Общие вопросы Delphi | 10 | 13.05.2016 10:44 |
TreeView, Canvas, Вывод текста | Kotaries | Общие вопросы Delphi | 1 | 18.07.2014 18:16 |
canvas и TextOut | Lokos | Общие вопросы Delphi | 1 | 27.08.2010 08:03 |