Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > Графика и игры
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

 
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 01.08.2012, 15:27
Akella225 Akella225 вне форума
Прохожий
 
Регистрация: 01.08.2012
Адрес: UA
Сообщения: 11
Версия Delphi: 2007, XE2
Репутация: 10
По умолчанию Конвертировать PNG ColorType из COLOR_PALETTE

Не могу найти нормально работающего примера, чтобы качественно увеличить PNG с alpha-каналом.
Delphi XE2

На сайте абракадабры (EDN>>CodeCentral) есть примеры работы с PNG: http://cc.embarcadero.com/Item/25631, в том числе и есть пример процедуры SmoothResize.

Там есть такой кусок кода:

Код:
      if not (apng.Header.ColorType in [COLOR_RGBALPHA, COLOR_RGB]) then
        raise Exception.Create('Only COLOR_RGBALPHA and COLOR_RGB formats' +
        ' are supported');



Проблема в том, что у меня изображение имеет apng.Header.ColorType равный 3, а именно COLOR_PALETTE

Код:
    unit Vcl.Imaging.pngimage;
    ...
    ....
    {Avaliable color modes for PNG}
    COLOR_GRAYSCALE = 0;
    COLOR_RGB = 2;
    COLOR_PALETTE = 3;
    COLOR_GRAYSCALEALPHA = 4;
    COLOR_RGBALPHA = 6;

поэтому вываливается Exception


Я с изображениями вообще не работал.
Поэтому нужна процедура изменения размера PNG. Или как "конвертировать" существующее изображение, чтобы эта процедура схавала мой png и не подавилась?
Может можно как сконвертировать изображение из COLOR_PALETTE в COLOR_RGBALPHA или в COLOR_RGB?
Ответить с цитированием
 


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 08:12.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter