<div dir="ltr"><div class="gmail_extra"><br><div class="gmail_quote">2013/12/19 Bert Freudenberg <span dir="ltr">&lt;<a href="mailto:bert@freudenbergs.de" target="_blank">bert@freudenbergs.de</a>&gt;</span><br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<div style="word-wrap:break-word"><div><div class="h5"><br><div><div>On 19.12.2013, at 18:06, Nicolas Cellier &lt;<a href="mailto:nicolas.cellier.aka.nice@gmail.com" target="_blank">nicolas.cellier.aka.nice@gmail.com</a>&gt; wrote:</div>
<br><blockquote type="cite"><div><div dir="ltr"><div><div><div><div>I know the answer, we have 30 bits available for keeping the rgb instance variable as SmallInteger...<br></div><div>So it&#39;s the best we can do, while keeping an efficient format.<br>
<br>
</div>But we are never using 10 bits for each component, for 32 bits image only 8 bit by color are used.<br></div>Since nowadays most Forms are 32 bits deep, this force useless conversions where we could have none.<br><br>

</div><div>I see that Pharo 3.0 did unify Color and TranslucentColor by moving the alpha information in Color.<br></div><div>But did not change the rgb ComponentMax... Any reason why?<br></div><div><br></div>If we encoded rgb component on 8 bits, and reverted the alpha channel encoding, then we could have colors pre-encoded on 32 bits, but most using only 24 bits (because most are opaque) would be represented as SmallInteger.<br>

</div><div>But I don&#39;t know if it is really inter-operable, or more natural...<br><br></div><div>Juan followed another path for Cuis, opting for float components, which is another possibility, but our VM are not yet optimized for handling Floats...<br>

<br></div><div>Thoughts?</div></div></div></blockquote><br></div></div></div><div>All opaque colors would be LargeIntegers, not SmallIntegers: 16rFFxxxxxx.</div></div></blockquote><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<div style="word-wrap:break-word"><span class=""><font color="#888888"><br><div>
<span style="border-collapse:separate;border-spacing:0px;font-family:&#39;Lucida Grande&#39;;font-size:12px"><div style="font-family:Helvetica"><span style="font-family:Helvetica">- Bert -</span></div><br></span>

</div>
</font></span></div></blockquote><div><div><br></div><div>Yes, that&#39;s why we would need to invert the encoding of alpha channel...<br>But
 this change would be much more intrusive (change primitives...), and 
not really compatible with established practices where alpha channel is 
interpreted as opcity level, not as transparency level (<a href="http://en.wikipedia.org/wiki/RGBA_color_space">http://en.wikipedia.org/wiki/RGBA_color_space</a>)<br></div><div>I think we can forget this part of the proposition which is too much Smalltalk-centric.<br>
<br></div><div>Nicolas<br></div><div><br></div> </div></div><br></div></div>