Clover Paintは多くのペイントアプリが備える色についての合成モードに加えて、
不透明度チャンネルの扱いについてもカスタマイズ可能な合成処理を備えています。
この機能と色に不透明度を含める機能、そしてペンストロークの合成機能を持つため、
Clover Paintは不透明度の扱いが非常に簡単で強力になっています。

Top

α合成モード

α合成モードには五つの種類があります。
変調 上にあるレイヤーを優先し、それの透過部分として下のレイヤーを扱う
線形 上にあるレイヤーと下にあるレイヤーを等しく扱い、上にあるレイヤーの不透明度で補間する
加算norm 上にあるレイヤーと下にあるレイヤーの不透明度を加算して飽和した場合、
合計して1.0になるよう調整し、その比率で2つのレイヤーを合成する
加算sat 上にあるレイヤーと下にあるレイヤーの不透明度を加算して飽和した場合、
下のレイヤーの不透明度を飽和しないように調整する
最大 上にあるレイヤーと下にあるレイヤーの不透明度のうち大きな方に不透明度を合わせる

文章では正確な表現が難しいため、式で表すと以下のようになります。

変調 To=Da*Sa*Vo
So=Sa*Vo*nDa
Do=Da*n(Sa*Vo)
線形 To=0
So=Vo
Do=nVo
加算norm P=(Da+Sa*Vo)
To=0
So=P>1.0?(Sa*Vo)/P:Sa*Vo
Do=P>1.0?Da/P:Da
加算sat P=(Da+Sa*Vo)
To=P>1.0?P-1:0
So=Sa*Vo
Do=P>1.0?Da-(P-1):Da
最大 To=min(Da,Sa*Vo)
So=Da>Sa*Vo?0:Sa*Vo-Da
Do=Da>Sa*Vo?Da-Sa*Vo:0

合成結果 = Dc*Do + Sc*So + Tc*To
Dc:下の色
Da:下の色の不透明度(ソース)
Do:下の色の不透明度
Sc:上の色
Sa:上の色の不透明度(ソース)
So:上の色の不透明度
Tc:演算結果色
To:演算結果色の不透明度
Vo:上の色の合成不透明度
nX=1-X
線形と、加算normは、通常合成モードでしか有効になりません。
なぜなら線形と加算normはTo要素が0になっています。
Toは演算結果の不透明度で、これが常に0ということは、二つのレイヤー間で行われる合成演算の入り込む余地が、
そもそも、その不透明度合成には存在しないということです。
一般的なペイントアプリで対応しているのはClover Paintでは変調です。

具体例:変調

実際にどういう違いがあるのか理解を助けるために、ここで少し具体的な演算例を挙げます。
上のレイヤー:赤(R=0.5;G=0.0;B=0.0;A=0.5) 合成不透明度0.5
下のレイヤー:青(R=0.0;G=0.0;B=0.5;A=0.5)
ようなレイヤーの組み合わせがあったとして、変調で合成すると結果はこのようになります。
To = 0.5*0.5*0.5 = 0.125
So = 0.5*0.5*(1-0.5) = 0.125
Do = 0.5*(1-(0.5*0.5)) = 0.375
Toは乗算その他、2つのチャンネルの演算結果の不透明度です。
通常の場合はここには上のレイヤー色が入り、背景の場合は下のレイヤー色が入ります。

合成結果 = Dc*Do + Sc*So + Tc*To
さらにこの式を通常モードを使ったと仮定して当てはめると、
上のレイヤー分:(R=0.25;G=0.0;B=0.0;A=0.25)
下のレイヤー分:(R=0.0;G=0.0;B=0.375;A=0.375)
合成結果レイヤー:(R=0.25;G=0.0;B=0.375;A=0.625)
このような結果が得られます。 上のレイヤーは0.5の色に対し、
0.5の合成不透明度がかかっていたので、最初から不透明度は0.25でそのままの値が
演算結果となっています。下のレイヤーは上のレイヤーの影響を受けて色が薄まります。
変調の演算は、半透明のセロファンを重ねていくようなイメージです。
最も一般的な合成モードと言えます。

具体例:線形

次に線形で合成するとどうなるでしょうか。

変調の例であったデータを線形に当てはめるとこのようになります。
To = 0
So = 0.5
Do = (1-0.5)
上のレイヤー分:(R=0.25;G=0.0;B=0.0;A=0.25)
下のレイヤー分:(R=0.0;G=0.0;B=0.25;A=0.25)
合成結果レイヤー:(R=0.25;G=0.0;B=0.25;A=0.5)
二つのレイヤーが全く等しく扱われていることがわかります。
これは純粋にクロスフェードのような演算だと言えます。
変調では透明なレイヤーをいくら重ねても不透明度は低下しません。
しかし線形を使えば透明なレイヤーを重ねるとそちらの透明度に近づいていきます。
このため消しゴムを作成する場合には変調ではなく、線形を選択する必要があります。

混合モードでは通常ならば描画されたストロークだけが存在するテンポラリレイヤーに、
編集レイヤーと同じ内容が最初から書き込まれます。
そのため通常合成の変調と線形、および背景合成の変調以外では合成結果がおかしくなるので無効にしています。
組み込みブラシの水彩や油彩などは線形が設定してあり、元の画像より不透明度を低くできるようになっています。
これを変調に変えるだけでも、かなりタッチが変わります。

Top

色合成モード

色合成モードはペイントアプリで見られるもののうち、使用頻度が比較的高いもの、および作成が容易なものを実装しています。
今後要望があれば、他の合成モードも実装していきます。
通常 一般的な演算と同じ
背景 上のレイヤーを一番奥にあるように表示
(主にメモ版で主線を画像面に置いたまま手前の編集面で色を塗れるようにするために用意された)
乗算 一般的な演算と同じ
加算 一般的な演算と同じ
減算 一般的な演算と同じ
スクリーン 一般的な演算と同じ
オーバーレイ 一般的な演算と同じ
比較(暗) 一般的な演算と同じ
比較(明) 一般的な演算と同じ
差の絶対値 一般的な演算と同じ
除外 一般的な演算と同じ