CSS3

プロパティ

mask-composite

  編集:2022.07.14 by T.A.

[Edge]⛌。→mdn

マスク層に於ける合成法

名前 mask-composite
<compositing-operator>#
初期値 add
適用対象 すべての要素。SVG においては、[defs 要素以外のコンテナ要素グラフィックス要素]に適用される。
継承 されない
百分率 受容しない
算出値 指定値
正準的順序 文法に従う
アニメーション型 離散的
<compositing-operator>
add
| subtract
| intersect
| exclude

各キーワードは、ある Porter-Duff 組成演算子 [COMPOSITING-1] を表現する ― それは、[現在のマスク層とその下にある(奥にある)マスク層たち]を組成するときに利用される組成演算を定義する。

以下においては、ソース は 現在のマスク層を指し、dest ¶要素 は ソースの下にある すべてのマスク層の累積 ― すなわち、それぞれに対応する組成演算子を順に適用した結果 ― を指すとする。

add
ソースは、dest の上に配置される(Porter-Duff 組成演算子 source-over を見よ)。
subtract
ソースは、dest の外側に入る所に配置される(Porter-Duff 組成演算子 source-out を見よ)。
intersect
ソースは、dest に重なり合う部分を置換する(Porter-Duff 組成演算子 source-in を見よ)。
exclude
ソースと dest とが重なり合わない領域が組み合される(Porter-Duff 組成演算子 xor を見よ)。

更なるマスク層が無い場合†、組成演算子は無視するものとする【†すなわち、dest が無い場合 ― 言い換えれば、対応するマスク層画像<mask-reference> における最後の画像である場合】。マスク層は、要素の内容や要素の背後にある内容とは組成しないものとする ― それらは隔離されたグループの中に描画されたかのように動作するものとする。

現在のマスク層より下にあるすべてのマスク層は、現在のマスク層に対し組成演算を適用する前に組成するものとする。

以下の例では、次の 2 つのマスク層画像 rect.svg、circle.svg があるとする【図の黒は、マスク値 1 を表す】

両マスク層画像とも、mask-image プロパティから参照される:

mask-image: circle.svg, rect.svg;

マスク層 rect.svg は、マスク層 circle.svg より下に(利用者から見て奥に)ある。

mask-composite プロパティにより、作者は異なる仕方を選んで複数のマスク層を組み合せれる。

¶他例省く


HTML:

ここに表示
¶[Edge]?
HTML:

ここに表示
スクリプト:


スクリプト:



表示内容:
表示内容: