Well, I'm not here to tell you guys how to implement your PNG8 support, but from the looks of it, you may be falling behind.

It looks like PNG8 partial transparency is part of the spec. From http://www.libpng.org/pub/png/pngstatus.html : "Many applications now support both basic GIF-like transparency (palette-based with a single, fully transparent color index) and full alpha transparency (32-bit RGBA); a handful also support PNG's "RGBA palette" mode (8-bit with a multi-entry tRNS chunk)."

Example images are on this page:
http://www.libpng.org/pub/png/pngs-img.html

And it *even* looks like IE7 will be supporting PNG8 partial transparency. See screen shots of previous page here:
http://www.libpng.org/pub/png/pngs-img-ie7w32.html

For more technical info, see here:
http://www.libpng.org/pub/png/book/chapter08.html#INDEX-618


As far as my "bug" goes: I just tried saving as a 24 bit PNG from montage, then using pngquant to reduce the colors, and it worked fine. I have the transparency like I wanted, with the palette I wanted. Hopefully pngquant will also be able to handle my large (4 GB uncompressed) images, but it will be a number of hours before I can test that.

Maybe you should take a look at the pngquant source for quantization algorithm ideas?
~Seth


On May 11, 2006, at 8:10 PM, Anthony Thyssen wrote:

Seth Price on  wrote...
| Nope, it still doesn't work.
|
| PNG8 supports partial transparency (and has for a while). Internet
| Explorer only supports PNG8 boolean transparency, though. This has
| lead to limited use of partial transparency on the web.
|
| A quick google search pulled up this bug from a while ago:
| http://studio.imagemagick.org/pipermail/magick-bugs/2003-September/
| 001484.html
|
| I wonder if it's the same problem.
| ~Seth
|
It could very well be.

IM png8: is by defination the same pallette structure as GIF.
and so isn't incorrect in IM terms.

Prehaps a  png8t:  format is needed for a 8 bit pallet with partical
colors.


Their was some recent work done with color distances last March so that
all pure transparency colors are of disance zero.  This was needed for
layer optimizations as without it a near transparent colors can be very
distant from each other, distorting color reduction and other color
tests (EG -fuzz color matching stuffs up badly)

This is a linear adjustment as such the RGBA distance between
half-transparent red to half-transparent blue is half the ditance of a
fully opaque red and blue distance.

Hmm my auto sinature picker picked a good on for this topic!

  Anthony Thyssen ( System Programmer )    <[EMAIL PROTECTED]>
---------------------------------------------------------------------- ------- "Brigadier, a straight line may be the shortest distance between two points,
       but it is by no means the most interesting."
-- Doctor Who, "The Time Warrior" ---------------------------------------------------------------------- ------- Anthony's Home is his Castle http://www.cit.gu.edu.au/ ~anthony/



_______________________________________________
Magick-users mailing list
[email protected]
http://studio.imagemagick.org/mailman/listinfo/magick-users

Reply via email to