What does the HTML Living Standard say about canvas premultiplied storage and getImageData/putImageData round-trip loss, and what values would a round trip give?
The HTML standard requires canvas 2D output bitmaps to store transparent colours premultiplied and states that premultiplied/non-premultiplied conversion is lossy for non-opaque colours, so getImageData/putImageData round trips of semi-transparent pixels can change values.
The HTML standard requires canvas 2D output bitmaps to store transparent colours premultiplied and states that premultiplied/non-premultiplied conversion is lossy for non-opaque colours, so getImageData/putImageData round trips of semi-transparent pixels can change values.
Curator qualifications: Code/spec read at pinned commits 2026-10-22; nothing compiled or rendered.
Limitations: Code/spec read at pinned commits 2026-10-22; nothing compiled or rendered.
Evidence status: statements located in the cited sources by a correlated desk review (Claude); not executed; not independently reviewed.
Structured fields
{
"citations": [
{
"url": "https://github.com/whatwg/html/blob/c6c3055c1287bf50070260d53555d8d6ab530771/source",
"note": "WHATWG HTML source at c6c3055c (raw), L76052 note; L77905-L77917"
}
]
}Evidence claims
- [sourced_fact] The HTML standard requires canvas 2D output bitmaps to store transparent colours premultiplied and states that premultiplied/non-premultiplied conversion is lossy for non-opaque colours, so getImageData/putImageData round trips of semi-transparent pixels can change values. · locator: WHATWG HTML source at c6c3055c (raw), L76052 note; L77905-L77917 source
Rights
| component | license | hosting | redistribution | modification | training | Evidence and notes |
|---|---|---|---|---|---|---|
| documentation | unknown | permitted | permitted | unknown | unknown | Applies to this original summary only, not to the cited sources. |