|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
15.01.2012, 09:53 | #1 |
Ещё не
Форумчанин
Регистрация: 04.01.2010
Сообщений: 517
|
Resize PNG картинки
Всем доброго времени суток! Делаю Resize PNG картинки вот так
Код:
Воображение важнее, чем знания. (Albert Einstein)
|
15.01.2012, 12:12 | #2 |
personality
Старожил
Регистрация: 28.04.2009
Сообщений: 2,886
|
У пнг используете сканлайн, а у бмп почему-то canvas.pixels ... странно
Используйте сканлайн уж и для бмп тогда - всяко побыстрее будет Плюс ещё кое-где можно пооптимизировать, предвычислять кое-что вне циклов, а то лишние операции, например: Код:
Ну а вообще совет мой будет куда более колким - используйте готовые либы для данной цели... велосипеды они почти только для опыта хороши. Либ вагон - syngdiplus например. |
15.01.2012, 13:21 | #3 | ||
Ещё не
Форумчанин
Регистрация: 04.01.2010
Сообщений: 517
|
Цитата:
а вот Цитата:
Воображение важнее, чем знания. (Albert Einstein)
|
||
15.01.2012, 13:45 | #4 |
Сумрачная тень
Форумчанин
Регистрация: 05.03.2009
Сообщений: 689
|
Код:
"ковыряю изнутри" (с)
Последний раз редактировалось 3D Hunter; 15.01.2012 в 13:47. |
15.01.2012, 22:45 | #5 |
Форумчанин
Регистрация: 31.10.2008
Сообщений: 215
|
Вот только сегодня нашёл, делюсь
Код:
[Ferox]
|
15.01.2012, 23:42 | #6 | ||
Ещё не
Форумчанин
Регистрация: 04.01.2010
Сообщений: 517
|
Цитата:
Цитата:
Воображение важнее, чем знания. (Albert Einstein)
|
||
15.01.2012, 23:53 | #7 |
Форумчанин
Регистрация: 31.10.2008
Сообщений: 215
|
Модуль pngimage, по умолчанию вроде для дельфи 7. А та функция создаёт пустое изображение PNG.
[Ferox]
|
16.01.2012, 16:12 | #8 |
Ещё не
Форумчанин
Регистрация: 04.01.2010
Сообщений: 517
|
Огромное спасибо postal2 все работает именно так как я и хотел
Воображение важнее, чем знания. (Albert Einstein)
|
22.02.2012, 18:18 | #9 |
Пользователь
Регистрация: 20.01.2010
Сообщений: 54
|
Для Delphi XE2, возможно, придется изменить объявление 2х переменных:
Код:
Код:
|
01.08.2012, 14:01 | #10 | |
Пользователь
Регистрация: 20.01.2010
Сообщений: 54
|
Не могу найти нормально работающего примера, чтобы качественно увеличить 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? |
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Узнать разрешение png картинки | zver777 | Мультимедиа в Delphi | 10 | 06.11.2011 01:01 |
Фрейм в виде png картинки | dmitriegorovih | Общие вопросы Delphi | 0 | 16.07.2010 20:42 |
png картинки в Delphi 10 | Marsel737 | Общие вопросы Delphi | 8 | 07.05.2010 22:03 |
PNG Resize | serhiyiv | Мультимедиа в Delphi | 1 | 14.03.2010 11:52 |
вывод картинки *.png на экран телефона | furstenberg | Общие вопросы по Java, Java SE, Kotlin | 3 | 31.07.2008 22:07 |