- From: John Bowler <john.cunningham.bowler@gmail.com>
- Date: Thu, 21 Nov 2024 07:35:22 -0800
- To: "Portable Network Graphics (PNG) Working Group" <public-png@w3.org>
Received on Thursday, 21 November 2024 15:35:38 UTC
>PNG decoder which understands cHRM as unsigned will see a huge number for ACES AP0. No it won't. The maximum PNG unsigned value is 0x7FFFFFFF. All the PNG 32-bit **signed** values are encoded with bit sequences outside this range and are therefore rejected as invalid. All **valid** PNG unsigned values are **also** **valid** signed values positive values and all the the unsigned values have exactly the same 32-bit (4-byte) representation as the identical PNG signed values. All the 32-bit sequences which correspond to negative PNG signed values are invalid PNG 32-bit **unsigned** encodings. I did say all of this above! I'm simply pointing out that the "dead" space in the PNG 32-bit encoding of PNG unsigned values (which currently results in the cHRM chunk being rejected if used) can simply be used to fix this serious defect in the PNG specification. So nothing gets broken. I did say this above. I made both these points in what I wrote.
Received on Thursday, 21 November 2024 15:35:38 UTC