<br><br><div class="gmail_quote">On Thu, Sep 10, 2009 at 12:06 PM, Boudewijn Rempt <span dir="ltr">&lt;<a href="mailto:boud@valdyas.org">boud@valdyas.org</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<div class="im">On Wednesday 09 September 2009, Dmitry Kazakov wrote:<br>
<br>
&gt; In current realization we get wrong result - we just copy alpha() channel<br>
<br>
</div>It might be instead of a bug in Krita a bug in the alpha colorspace&#39;s<br>
implementation of the OVER composite op. That looks like it has changed since<br>
1.6. I&#39;ll investigate that a bit.<br></blockquote><div><br><br>First, current realization does NOT use COMPOSITE_OVER by default. It uses COMPOSITE_ALPHA_DARKEN instead [0].<br>I don&#39;t know why (and it still looks quite strange for me) but Cyrille said ALPHA_DARKEN &quot;is more beautiful&quot;. I can&#39;t say anything about that.<br>
<br>Even if we decide to use COMPOSITE_OVER, it won&#39;t solve the problem at all. Before drawing on canvas dab of the brush will be converted to alpha8() automaticaly by pigment. It means that dab will loose(!) all it&#39;s color information and only brush&#39;s alpha-mask will be used as a source of painting. More than that, the bitBlt WON&#39;T have any useful alpha mask to control painting (as a colorspace has only one channel and it is used as a source of bitBlt). This means that whole rectangle will be painted onto the canvas and any composition type is simply _not applicable_ here(!) as we do not have useful alpha mask for painting.<br>
<br><br>It&#39;s not &quot;a change from 1.6&quot;. Painting on the selection simply hadn&#39;t been planned in the design of classes.<br>And the fact that IndirectPainting simply CAN&#39;T be applied to selections speaks for that.<br>
<br></div></div><br><br><br>[0] - see kis_tool_freehand.cc:326 for more<br clear="all"><br>-- <br>Dmitry Kazakov<br>