Page 1 of 1
Pictview: PNG po průchodu programem PNGSlim jsou černé
Posted: 20 Apr 2009, 10:13
by stepand76
Zdar všem, použil jsem program PNGSlim (
http://forum.altap.cz/viewtopic.php?f=15&t=3278) na některé svoje obrázky a zjistil, že po průchodu je PictView nezobrazuje správně (černé pozadí). Jde o obrázky s alpha kanálem a 256 barevnou paletou. Viz příloha...
Re: Pictview: PNG po průchodu programem PNGSlim jsou černé
Posted: 20 Apr 2009, 10:51
by zarevak
Všechny přiložené obrázky jsou 8bit Grey+Alpha (Color type = 4). Tedy bez palety
O problému jsem již psal ve
vlákně o podpoře PNG pro pluginy.
Tento příspěvek.
-
Specifikace IHDR chunku
Re: Pictview: PNG po průchodu programem PNGSlim jsou černé
Posted: 20 Apr 2009, 13:03
by stepand76
zarevak wrote:Všechny přiložené obrázky jsou 8bit Grey+Alpha (Color type = 4). Tedy bez palety

[/url]
Dík za připomínku. Moc jsem to nezkoumal, jen jsem si všiml, že to PictView nezobrazí správně a hned jsem to reportoval.
Re: Pictview: PNG po průchodu programem PNGSlim jsou černé
Posted: 22 Apr 2009, 23:23
by zarevak
Tak abych doplnil původní problém, kdy PictView nezvládne PNG obrázek s Paletou (
Color type = 3) a jejím Alpha kanálem v
tRNS chunku. Dokonce PictView kreslí nekontrolovatelné průhledné "fleky". (Barevná hloubka všech přiložených obrázků je 8 bitů - tedy by měly být možné je načíst pomoci
PNGLite)
Zdrojový obrázek - pár barev a 2 úrovně Alpha:

- paltest_rgba.png (2.49 KiB) Viewed 5802 times
Pomocí
PNGslim převedeno na Palette + tRNS Alpha. V PictView obsahuje průhledné fleky u spodních písmen P a G:

- paltest_pal.png (1.04 KiB) Viewed 5801 times
Finální optimalizovaný obrázek. Bílá s 50% Alpha je v PictView zobrazena jako průhledná:

- paltest_pal_final.png (1.02 KiB) Viewed 5803 times
Tipuji, že PictView
tRNS chunk bere jako index průhledné barvy, ale v případě Paletových (
Color type = 3) obrázků slouží
tRNS chunk pro nastavení
Alpha kanálu prvních
X položek v paletě!
Re: Pictview: PNG po průchodu programem PNGSlim jsou černé
Posted: 23 Apr 2009, 08:35
by Jan Rysavy
zarevak wrote:Tipuji, že PictView
tRNS chunk bere jako index průhledné barvy, ale v případě Paletových (
Color type = 3) obrázků slouží
tRNS chunk pro nastavení
Alpha kanálu prvních
X položek v paletě!
Je to přesně tak. Otestoval jsem obrázky v novém CSalamanderPNGAbstract a Demopluginu a vypadá to OK.

- demplugin.png (29.13 KiB) Viewed 5780 times
Re: Pictview: PNG po průchodu programem PNGSlim jsou černé
Posted: 23 Apr 2009, 10:17
by Jan Patera
zarevak wrote:Tipuji, že PictView
tRNS chunk bere jako index průhledné barvy, ale v případě Paletových (
Color type = 3) obrázků slouží
tRNS chunk pro nastavení
Alpha kanálu prvních
X položek v paletě!
Byla to zapomenuta vec z dob, kdy PV neumel alpha-blending. V historickych dobach to pro netrivialni mnozstvi souboru (zkonvertovanych GIFu) bohate stacilo.