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

Вниз

Delphi. Вывод форматированного текста на канвас.   Найти похожие ветки 

 
Bizquit   (2005-10-04 07:58) [0]

Господа программеры! Задача заключается в следующем:
Есть компонент-контейнер для хранения форматированного текста на основе TList"а, где каждый его элемент сожержит информацию о куске текста (имя шрифта, размер, стиль и т.п.) Необходимо вывести ВЕСЬ текст (просматривая поэлементно контейнер) на заданный канвас в строго определенную прямоугольную область. Дополнительно: Если весь текст не умещается в заданную область, то пропорционально уменьшить размер шрифта на 1усл.ед. и попробовать снова вывести и т.д. пока ВЕСЬ текст не влезет в заданную область.
Буду очень признателен за ЛЮБУЮ помощь.


 
MBo ©   (2005-10-04 08:09) [1]

Сильно смахивает на RTF и соответственно напрашивается использование RichEdit...


 
Bizquit   (2005-10-04 08:32) [2]

Неее, не смахивает )). Нужно, к примеру, создать битмап в памяти и на него уже просто вывести весь текст. Редактировать его(текст) не надо.


 
MBo ©   (2005-10-04 08:45) [3]

Ну и пусть не надо редактировать.
Но что мешает воспользоваться возможностями Rich для форматного вывода, отвечающего общепринятфм стандартам, и измерения необходмиой рабочей области?


 
Bizquit   (2005-10-04 08:56) [4]

сейчас снова пересмотрел сорцы RichEdita и ума не приложу как им можно воспользоваться...


 
MBo ©   (2005-10-04 09:00) [5]

ну исходники его тут и не нужны.
Как я вижу принцип реализации твоей задачи:
Имеются куски текста, и соответствующие форматы.
Устанавливаешь в RichEdit очередной формат, выводишь текст. Измеряешь размер. Все.

Альтернатива - DrawText для каждого куска c соотв. флагами для расчета прямоугольника вывода.


 
Bizquit   (2005-10-04 11:05) [6]

не то...(( мне надо на канвас рендерить...


 
MBo ©   (2005-10-04 11:56) [7]

А это... DrawText для чего предназначена?


 
Bizquit   (2005-10-04 12:16) [8]

да, вот чую, что придется этим самым DrawText"ом рендерить... еще придется перенос по словам организовывать... думал может народ уже заморачивался и куском кода поможет... ладно, сам буду делать, но все равно спасибо за участие.


 
MBo ©   (2005-10-04 13:16) [9]

DrawText и перенос умеет делать.



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

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

Наверх




Память: 0.48 MB
Время: 0.05 c
2-1140975843
TimScorp
2006-02-26 20:44
2006.03.12
Звук при нажатии клавиши


2-1140507460
Piero
2006-02-21 10:37
2006.03.12
Разложить byte на биты


4-1135059052
jiny
2005-12-20 09:10
2006.03.12
Как сделать так, чтобы прога считала строку программным кодом


2-1140522139
Pit
2006-02-21 14:42
2006.03.12
Popupmenu


10-1114507488
BKV
2005-04-26 13:24
2006.03.12
Задержка при создании com обьекта