Jump to content

Color is not preserved when alpha channel is zero


vic
 Share

Recommended Posts

Steps to reproduce :

 

  • Create a new image
  • Fill it with any non-black color with an alpha channel of zero
  • Save the image as 32 bit PNG
  • Reload the image
  • -> the color is now 000000 instead of the chosen color.

 

Edit: There is also loss of precision of the color with small but non-null alpha values.

Edited by vic
Link to comment
Share on other sites

If I set a pixel to some specific value, the program should not change that value. It is not a math issue but a matter of preserving the integrity if the data. This is relevant because in some contexts like OpenGL textures, the color information of pixels is used when resizing even if the alpha channel is zero.

Link to comment
Share on other sites

Then they are not using those files in a standard way. According to the standard, if alpha is 0 then R, G, and B are undefined. If OpenGL wants to use that data they should define their own graphics format.

You really can't fault Paint.NET for following the standard in this case.

Click to play:
j.pngs.pngd.pnga.pngp.png
Download: BoltBait's Plugin Pack | CodeLab | and how about a Computer Dominos Game

Link to comment
Share on other sites

I told you why it happens and I would elaborate further but now you're getting rather argumentative about it (plus this has been asked and answered a few other times, IIRC, so you can search for it).

 

 

It is not a math issue

I just said it's related to the math involved. I wrote the software. Therefore, it is not a math issue? Not exactly a QED moment.

 

Look man, I'm giving this software away for free. If it doesn't do exactly what you want it to do, then you'll just have to find something else.

 

Thread Closed

The Paint.NET Blog: https://blog.getpaint.net/

Donations are always appreciated! https://www.getpaint.net/donate.html

forumSig_bmwE60.jpg

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
 Share

×
×
  • Create New...