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

Вниз

Работа с PNG   Найти похожие ветки 

 
Klim   (2007-12-10 16:23) [0]

Хочу сделать графический интерфейс у программы, используя png файлы с прозрачностью. Для работы с png юзаю PNGImage(pngdelphi.sourceforge.net/)
Возникло несколько вопросов по работе с png:
1) Как "раскрасить" картинку в другой цвет(вот в этом примере реализовано bmp http://www.delphisources.ru/files/sources/graph/2007_year/personal_design.zip)
2) На событии MouseMove, как понять находится курсор над прозрачной областью или нет(в bmp можно заюзать Image1.Picture.Bitmap.Canvas.Pixels и сравнить его с прозрачным цветом)
Спасибо за ответы.


 
homm ©   (2007-12-10 16:26) [1]

> [0] Klim   (10.12.07 16:23)
> На событии MouseMove, как понять находится курсор над прозрачной
> областью или нет

Получить значение байта «прозрачности» из исходного изображения.


> [0] Klim   (10.12.07 16:23)
> Как "раскрасить" картинку в другой цвет(вот в этом примере
> реализовано bmp

Там же исходники есть. Осталось только включить мыслительный процесс, и то врятли понадобится.


 
Klim   (2007-12-10 16:40) [2]


> Получить значение байта «прозрачности» из исходного изображения.

подскажи плиз каким образом??
По идее у обьекта TPNGObject должно быть свойство Pixels[x,y] который и должен вернуть цвет
Допустим есть Image1 в котором и находится искомый png. Как мне дойти до этого свойства??
Если я завожу отдельную переменную типа TPNGObject, то все ок, а тут как быть... ?


 
homm ©   (2007-12-10 16:42) [3]

> [2] Klim   (10.12.07 16:40)
> По идее у обьекта TPNGObject должно быть свойство Pixels[x,y] который и должен вернуть цвет

Странная идея. Почему именно Pixels? Ищи аналог. А о Pixels вообще забудт как страшный сон, ибо медленный до жути. Почитай но ScanLine


 
antonn ©   (2007-12-10 17:48) [4]

у ПНГИмаге есть ScanLine и alphaScanLine для маски.



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

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

Наверх




Память: 0.47 MB
Время: 0.015 c
4-1217601873
Bakl
2008-08-01 18:44
2009.09.20
Возможно ли средствами Делфи определить модель устройства.


15-1248325667
Andy BitOff
2009-07-23 09:07
2009.09.20
Наконец-то слетел хелп...


1-1215965666
dmitry_12_08_73
2008-07-13 20:14
2009.09.20
Диалоговое окно не должно перекрываться другими окнами


3-1226996831
linox
2008-11-18 11:27
2009.09.20
Реляционная база данных Access + DBGRID


15-1248033359
Юрий Зотов
2009-07-19 23:55
2009.09.20
Сам дурак, или как?