![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
||||
|
||||
![]() Не могу найти нормально работающего примера, чтобы качественно увеличить PNG с alpha-каналом.
Delphi XE2 На сайте абракадабры (EDN>>CodeCentral) есть примеры работы с PNG: http://cc.embarcadero.com/Item/25631, в том числе и есть пример процедуры SmoothResize. Там есть такой кусок кода: Код:
Проблема в том, что у меня изображение имеет apng.Header.ColorType равный 3, а именно COLOR_PALETTE Код:
поэтому вываливается Exception Я с изображениями вообще не работал. Поэтому нужна процедура изменения размера PNG. Или как "конвертировать" существующее изображение, чтобы эта процедура схавала мой png и не подавилась? Может можно как сконвертировать изображение из COLOR_PALETTE в COLOR_RGBALPHA или в COLOR_RGB? |
#2
|
||||
|
||||
![]() GDI+ пробовал?
Пишу программы за еду. __________________ |
#3
|
|||
|
|||
![]() Нет.
Попробую, если найду нормальный рабочий готовый пример. |
#4
|
||||
|
||||
![]() попробуй это:
-просто запустить "Project1.exe" -масштабирует в 2 раза файл "Google.png" (в одном каталоге с программой) -результат файл "Google+.png" Пишу программы за еду. __________________ |
#5
|
|||
|
|||
![]() Работает как надо.
Но готовый примерчик бы поиметь вместо exe ![]() |
#6
|
|||
|
|||
![]() Нашёл вот такой код
Код:
тестирую |
#7
|
|||
|
|||
![]() Цитата:
Можно на Ваш код глянуть? Можно ли в нём работать не через файл? Мне нужно работать без физического файла. Я скачиваю из интернета картинку и увеличиваю размер, затем записываю TMemoryStream в базу. |
#8
|
|||
|
|||
![]() Практически такая-же проблема. Использую TPNGObject (другого не предлагать).
Скачивается файл .png с ColorType COLOR_PALETTE. Нужно обращаться к Alpha-пикселям, но при AlphaScanline появляется ошибка. Есть ли какие-то способы перевести ColorType в COLOR_RGBALPHA? |
#9
|
||||
|
||||
![]() В старых версиях Дельфи PNGObject, в новых PNGImage.
Код:
другой вариант: Код:
Je venus de nulle part 55.026263 с.ш., 73.397636 в.д. Последний раз редактировалось angvelem, 15.08.2012 в 03:42. |
#10
|
|||
|
|||
![]() Цитата:
см. эту тему http://forum.vingrad.ru/forum/topic-354907.html там есть готовые процедуры и функции, примеры |