Skip to content

Fix WebP loading for transparent WebP - #35

Merged
whistyun merged 3 commits into
whistyun:masterfrom
jvbsl:patch-premul
Mar 18, 2026
Merged

whistyun merged 3 commits into
whistyun:masterfrom
jvbsl:patch-premul

Conversation

@jvbsl

@jvbsl jvbsl commented Feb 9, 2026 •

Copy link
Copy Markdown
  • Checkerboard transparency background
  • While it seems that webp supports both premultiplied and unpremultiplied alpha channels
    it seems to me that in the real world it is premultiplied. Therefore also decode webp
    images as premultiplied images.

On the WebP part I'm not 100% sure, but I did not find any webp where it was not premultiplied.

I also did premultiplication on PNG, but it seems that was already done by you a week ago :D

The tests I would need to check how we would fix those as they compare webp premultiplied with png non premultiplied, which fails ofc.

Actually the tests where fine, but the Test Data was actually wrong, it is better visible on a dark background but can also be seen on github.

jvbsl added 3 commits February 9, 2026 15:15
* While it seems that webp supports both premultiplied and unpremultiplied alpha channels
  it seems to me that in the real world it is premultiplied. Therefore also decode webp
  images as premultiplied images.
* Recreate the test data frame output of the webp animation
  as previously the webp images where premultiplied and saved
  as such even though PNG is always unpremultiplied.
  The difference between the images shows that the transparency
  looked wrong before as well.
@whistyun
whistyun merged commit 8eebe00 into whistyun:master Mar 18, 2026
5 of 14 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants