C++Builder
  Начало   Форум   Помощь Войти Регистрация  
Страниц: [1]   Вниз
  Печать  
Автор Тема: Сохранить PNG из TBitmap  (Прочитано 1193 раз)
lepricon
Участник


Сказали спасибо: +0/-0
Offline

Сообщений: 29


« : 01 Ноябрь 2015, 01:03:39 »

Добрый день! Тема вроде стара как не знаю что, но...
Хочу сформировать PNG картинку из bitmap-a так чтобы заданный цвет на битмапе на PNG картинке стал прозрачным.
Хотя бы просто последовательность действий подскажите, но по-подробнее )
Записан
POV
Участник


Сказали спасибо: +107/-7
Offline

Сообщений: 640


« Ответ #1 : 01 Ноябрь 2015, 19:24:25 »

Подробно не могу, не пользовал это.. Но вот отсюда начать несложно, в пару шагов нужная инфа будет получена
http://docwiki.embarcadero.com/Libraries/Seattle/en/Vcl.Imaging.pngimage.TPngImage
Записан
lepricon
Участник


Сказали спасибо: +0/-0
Offline

Сообщений: 29


« Ответ #2 : 02 Ноябрь 2015, 21:34:08 »

Спасибо! Собственно говоря его и пользую...
У него есть свойство scanline как и у bitmap-а. И соответственно alphascanline  для альфа-канала, я так понимаю....
Я пробовал двумя путями:

1) формировал bitmap (32 бита), в первые три байта записывал цвет; если он совпадал с заданным, то четвертым байтом ставил 0, если нет - 255
    Это значение вставлял в scanline
    потом делал png->Assign(bitmap)

2) сразу делал png->Assign(bitmap)
    потом пробегал по значениям scanline и в зависимости от значения выставлял байты в alphascanline

В обоих случаях никакой прозрачности не получилось. Чего-то не втыкаю с этим альфа-каналом...
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  




....

Powered by SMF 1.1.21 | SMF © 2025, Simple Machines
Страница сгенерирована за 0.094 секунд. Запросов: 21.