Вниз
Скачать: CL | DM;

Преобразование текста в набор пикселов.   Найти похожие ветки 

 
JTAG ©   (2003-07-28 13:39) [0]

Кратко о задаче. Например, есть стандартный редактор Memo или RichEdit в котором я могу набирать текст. При помощи стандартных диалогов могу менять тип шрифта, цвет, размер и т.д. этого текста. После того как текст набран и отредактирован нужно получить пиксельный образ этого текста. Что имеется ввиду, допустим в окне редактора размером по высоте 100 пикселей, а по ширине 200 пикселей набрана строчка текста, мне нужно считать каждый пиксель окна редактора и определить его параметр (т.е. цвет RGB каждого пикселя ).
Это было нетрудно сделать, зная координаты левого верхнего угла окна редактора и его размеры, при помощи такого оператора i:= Form1.Canvas.Pixels[j,k]; где j-меняется по вертикальным пикселам окна редактора , k по горизонтальным.
Но этот алгоритм можно применить если текст достаточно невелик и может уместиться в окне редактора, а если текст большой и для его просмотра необходимо делать прокрутку, как быть тогда.
Может быть нужно использовать другой алгоритм , если не трудно поделитесь мыслями, буду очень благодарен.
С Наилучшими пожеланиями Александр. to_a@mail.ru


 
MBo ©   (2003-07-28 14:09) [1]

см. EM_FORMATRANGE


 
AlexT1000 ©   (2003-07-28 14:09) [2]

ты можешь создавать какой либо временный битмап и рисовать на него текст. и уже из этого битмапа получать свой пиксельный образ.
и уж конечно не пользоваться Canvas.Pixels

Почитай про Bitmap.ScanLine.



 
Fenik ©   (2003-07-28 20:32) [3]

Можно попробовать PaintTo, но, по-моему, он рисует только на формы..



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.014 c
3-78859
Max_
2003-11-03 13:31
2003.11.24
Oшибка ADOQuery и MDI?


1-78960
Kiril
2003-11-04 01:46
2003.11.24
Как сделать множество русских и английских букв?


3-78815
Davinchi
2003-11-04 13:14
2003.11.24
ошибка при установке фильтра в ADO таблице


1-79013
Michael_X
2003-11-14 09:27
2003.11.24
Считывание табличных данных из файла.


1-78976
Aleksandr
2003-11-14 13:02
2003.11.24
Как вернуть дочернее окно в начало координат клиентской области?




   Наверх