<div dir="ltr"><div class="gmail_default" style="font-family:verdana,sans-serif"><div class="gmail_default" style="font-family:verdana,sans-serif">The 
issue is not any external format like OpenEXR, but that so far as I am 
aware, there is no way to extract non-pre-multiplied information out of 
Cairo. This is something I need to do. Were Cairo able to output to 
OpenEXR, that would essentially be one of the options I listed that 
would resolve this problem. It is, so far as I can tell, not capable of that.<br><br></div>If
 I must justify the need for this feature, which a Google search has 
revealed numerous people talking about regarding Cairo, it is simply 
that I am intending to use Cairo's output in far more complex operations
 than simple alpha-blends. Pre-multiplied alpha conveys little to no 
benefit when, for example, using rayraced transparency.<br><br>It does, 
however, have all the negative impacts I outlined in my first email - 
the primary concern of mine being the loss of color range, should the 
texel be used in any way other than a simple alpha-blend.</div></div><div class="gmail_extra"><br clear="all"><div><div class="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><font size="1"><span style="font-family:trebuchet ms,sans-serif"><br>:-:-:-</span></font><span style="color:rgb(68,68,68)"><font size="1"><span style="font-family:trebuchet ms,sans-serif">:-:-:-</span></font></span><span style="color:rgb(102,102,102)"><font size="1"><span style="font-family:trebuchet ms,sans-serif">:-:-:-</span></font></span><span style="color:rgb(153,153,153)"><font size="1"><span style="font-family:trebuchet ms,sans-serif">:-:-:-</span></font></span><span style="color:rgb(204,204,204)"><font size="1"><span style="font-family:trebuchet ms,sans-serif">:-:-:-</span></font></span><span style="color:rgb(238,238,238)"><font size="1"><span style="font-family:trebuchet ms,sans-serif">:-:-:-</span></font></span><span style="color:rgb(243,243,243)"><font size="1"><span style="font-family:trebuchet ms,sans-serif">:-:-:-</span></font></span><br><span style="font-family:verdana,sans-serif">William E. Kappler II<br><font size="1"><a href="https://www.linkedin.com/in/williamkappler" target="_blank">LinkedIn</a> · <a href="http://williamkappler.blogspot.com/" target="_blank">Blog</a> · <a href="https://github.com/WilliamKappler/onathacar/wiki" target="_blank">Project Website</a></font></span></div></div></div></div></div></div></div>
<br><div class="gmail_quote">On Thu, Jan 28, 2016 at 12:15 AM, Lawrence D'Oliveiro <span dir="ltr"><<a href="mailto:ldo@geek-central.gen.nz" target="_blank">ldo@geek-central.gen.nz</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">On Wed, 27 Jan 2016 22:25:42 -0500, William Kappler wrote:<br>
<br>
>    - Most libraries, shaders, and users/programmers expect textures<br>
<span class="">> in 3D contexts to be non-pre-multiplied.<br>
<br>
</span>Premultiplied alpha is the usual convention for rendering and<br>
compositing in both 2D and 3D<br>
<<a href="http://wiki.blender.org/index.php/Dev:Ref/Release_Notes/2.66/Image_Transparency" rel="noreferrer" target="_blank">http://wiki.blender.org/index.php/Dev:Ref/Release_Notes/2.66/Image_Transparency</a>>.<br>
<br>
Why premultiplied alpha? <<a href="http://keithp.com/~keithp/porterduff/" rel="noreferrer" target="_blank">http://keithp.com/~keithp/porterduff/</a>><br>
<br>
So if you want to reuse a rendered image in a context which does not<br>
understand premultiplied alpha, you will have to convert it.<br>
<br>
If you care about image quality, you will maintain your assets in a<br>
floating-point format like OpenEXR, which normally uses premultiplied<br>
alpha anyway.<br>
<span class="HOEnZb"><font color="#888888">--<br>
cairo mailing list<br>
<a href="mailto:cairo@cairographics.org">cairo@cairographics.org</a><br>
<a href="http://lists.cairographics.org/mailman/listinfo/cairo" rel="noreferrer" target="_blank">http://lists.cairographics.org/mailman/listinfo/cairo</a></font></span></blockquote></div><br></div>