Форум: "Прочее";
Текущий архив: 2008.03.09;
Скачать: [xml.tar.bz2];
ВнизСамый "дешевый" способ загрузить картинку PNG? Найти похожие ветки
← →
Dmitry S © (2008-02-04 12:15) [0]Вобщем нужен аналог функции:
Bmp := LoadImage(
HInstance,
"src.bmp",
IMAGE_BITMAP,
0,
0,
LR_CREATEDIBSECTION
or LR_DEFAULTSIZE
or LR_LOADFROMFILE
);
только для png.
Иначе говоря на выходе нужно иметь 32х битный HBITMAP.
← →
clickmaker © (2008-02-04 12:19) [1]через GDI+
либо ищи компонент, GraphicsEx, к примеру
← →
Ins © (2008-02-04 12:22) [2]http://www.thany.org/download/14/pngcomponentssetup.zip
← →
Dmitry S © (2008-02-04 12:24) [3]Мне не нужны компоненты, мне нужен простой способ. Я делаю приложение на WinApi:) А BMP с альфа каналом много весят и много мороки, чтобы их создать.
← →
Zeqfreed © (2008-02-04 12:25) [4]libpng?
← →
clickmaker © (2008-02-04 12:27) [5]http://rsdn.ru/article/qna/gdi/drawimg.xml
← →
rts111 © (2008-02-04 12:34) [6]http://pngdelphi.sourceforge.net
← →
Dmitry S © (2008-02-04 13:04) [7]Все не то. Или VCL или DLL (160 КБ) с собой таскать.
Вот тут пример есть
http://chime.student.utwente.nl/qweerdy/ppa.zip
на асме.
Exe файл весит 72 КБ, из которых 62 - ресурс.
Найти бы этот самый
include pnglib.inc
includelib pnglib.lib
для дельфи.
← →
хам (2008-02-04 13:18) [8]Мой распаковщик для PNG весит 20кб, в сжатом upx виде 9кб. Проходит валидацию на w3.org, тока альфу игнорит, выдавая результат 24 бита для лубого файла.
← →
Dmitry S © (2008-02-04 13:21) [9]борьба как раз за альфу:)
← →
хам (2008-02-04 13:29) [10]> [9] Dmitry S © (04.02.08 13:21)
> борьба как раз за альфу:)
В принципе, если есть желание, можно и подправить, формат то он верно узнает.
← →
ketmar © (2008-02-04 13:56) [11]>[7] Dmitry S ©(04.02.08 13:04)
ну вырежь из zlib распаковщик да напиши сам. %-)
← →
rts111 © (2008-02-04 14:50) [12]
> rts111 © (04.02.08 12:34) [6]
> http://pngdelphi.sourceforge.net
А что, на том сайте не нашел?
Я точно не помню, но кажись оттуда качал.
Без компонентов, и компактно, у меня пашет.
Я правда ручками немного правил, но там все просто вроде бы.
Могу на мыло скинуть?
← →
Sapersky (2008-02-04 15:19) [13]KOLPng, если использовать только загрузку, добавляет около 30 кб (последние версии, может быть, немного больше). Альфа есть, хотя сделана не очень удобно - грузится в отдельную область памяти, т.е. конвертацию в 32-битный битмап нужно дописывать самостоятельно.
← →
Черный Шаман (2008-02-04 16:02) [14]
>
> Dmitry S © (04.02.08 12:15)
>
> Вобщем нужен аналог функции:
> Bmp := LoadImage(
> HInstance,
> "src.bmp",
> IMAGE_BITMAP,
> 0,
> 0,
> LR_CREATEDIBSECTION
> or LR_DEFAULTSIZE
> or LR_LOADFROMFILE
> );
> только для png.
> Иначе говоря на выходе нужно иметь 32х битный HBITMAP.
Вот тебе описание формата png
http://www.w3.org/TR/PNG/
Загружаешь в память, разбираешь формат и перегоняешь массив пикселов в Hbitmap через DIB функции.
Страницы: 1 вся ветка
Форум: "Прочее";
Текущий архив: 2008.03.09;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.042 c