[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-kimageshop
Subject:    Re: Solution for the grayscale selections
From:       Dmitry Kazakov <dimula73 () gmail ! com>
Date:       2012-09-25 10:45:50
Message-ID: CAEkBSfX8LXcvO-e62qVA_g3JcvbqikUu15Fn-QyrM06cad-CPw () mail ! gmail ! com
[Download RAW message or body]

[Attachment #2 (multipart/alternative)]


On Tue, Sep 25, 2012 at 12:58 PM, Boudewijn Rempt <boud@valdyas.org> wrote:

>
> As discussed before, there are a number of places where we need to check
> whether we get into trouble:
>
> * brush mask generation without alpha channel
>

Currently, the paint ops generate the mask exactly into the alpha channel.
So the data about the current color is simply lost. You will have to
rewrite the paintops to mix this value to the resulting singlebyte pixel.
More than that, the resulting composite op will never work like
COMPOSITE_OVER. It'll only be able to work like COMPOSITE_ADD, which is
quite different.


> * (possibly) the conversion between colorspaces with and without alpha
> channel in KoColorSpace::bitBlt
>

To make this conversion you need to have two colorspaces first. And to have
two colorspaces you need to tell the paint ops to use some other colorspace.



> * specific composite ops for the gray without alpha channel colorspace
>

They will never work like usual COMPOSITE_OVER. And to generate a dab in
such colorspace we need to make changes in all the paint ops.






-- 
Dmitry Kazakov

[Attachment #5 (text/html)]

<br><div class="gmail_quote">On Tue, Sep 25, 2012 at 12:58 PM, Boudewijn Rempt <span \
dir="ltr">&lt;<a href="mailto:boud@valdyas.org" \
target="_blank">boud@valdyas.org</a>&gt;</span> wrote:<br><blockquote \
class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc \
solid;padding-left:1ex"> <br>
As discussed before, there are a number of places where we need to check whether we \
get into trouble:<br> <br>
* brush mask generation without alpha channel<br></blockquote><div><br>Currently, the \
paint ops generate the mask exactly into the alpha channel. So the data about the \
current color is simply lost. You will have to rewrite the paintops to mix this value \
to the resulting singlebyte pixel. More than that, the resulting composite op will \
never work like COMPOSITE_OVER. It&#39;ll only be able to work like COMPOSITE_ADD, \
which is quite different.<br>  </div><blockquote class="gmail_quote" style="margin:0 \
                0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
* (possibly) the conversion between colorspaces with and without alpha channel in \
KoColorSpace::bitBlt<br></blockquote><div><br>To make this conversion you need to \
have two colorspaces first. And to have two colorspaces you need to tell the paint \
ops to use some other colorspace.<br> <br>  </div><blockquote class="gmail_quote" \
                style="margin:0 0 0 .8ex;border-left:1px #ccc \
                solid;padding-left:1ex">
* specific composite ops for the gray without alpha channel \
colorspace<br></blockquote><div><br>They will never work like usual COMPOSITE_OVER. \
And to generate a dab in such colorspace we need to make changes in all the paint \
ops.<br>  <br></div><br><br></div><br><br clear="all"><br>-- <br>Dmitry Kazakov<br>



_______________________________________________
kimageshop mailing list
kimageshop@kde.org
https://mail.kde.org/mailman/listinfo/kimageshop


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic