CairoOperator クラス

(No version information available, might only be in Git)

はじめに

すべての描画操作に使う合成演算子を設定します。

デフォルトの演算子は CairoOperator::OVER です。

unbounded (境界なし) とマークされた演算子は、マスクレイヤーの外部であっても変更します (つまり、その影響はマスクレイヤー内だけにはおさまらないということです)。 しかし、その影響はクリッピング領域の中に限定されます。

ドキュメントをシンプルにするために、ここでの演算子の説明は 演算前と演算後の画像がどひらも完全に透明あるいは完全に不透明であるときの振る舞いだけになっています。 実際の実装は、半透明なレイヤーでも動作するようになっています。 各演算子の挙動についてより詳しい説明 (数学的な定義など) が必要な場合は、 http://cairographics.org/operators/ を参照ください。

クラス概要

CairoOperator {
/* 定数 */
const integer CLEAR = 0 ;
const integer SOURCE = 1 ;
const integer OVER = 2 ;
const integer IN = 3 ;
const integer OUT = 4 ;
const integer ATOP = 5 ;
const integer DEST = 6 ;
const integer DEST_OVER = 7 ;
const integer DEST_IN = 8 ;
const integer DEST_OUT = 9 ;
const integer DEST_ATOP = 10 ;
const integer XOR = 11 ;
const integer ADD = 12 ;
const integer SATURATE = 13 ;
}

定義済み定数

CairoOperator::CLEAR

対象レイヤーをクリアする (bounded)

CairoOperator::SOURCE

対象レイヤーを置き換える (bounded)

CairoOperator::OVER

元レイヤーを対象レイヤーの上に描画する (bounded)

CairoOperator::IN

元画像を対象があったところに描画する (unbounded)

CairoOperator::OUT

元画像を対象がなかったところに描画する (unbounded)

CairoOperator::ATOP

元画像を対象の上だけに描画する

CairoOperator::DEST

元画像を無視する

CairoOperator::DEST_OVER

対象画像を元画像の上に描画する

CairoOperator::DEST_IN

元画像があったところだけ、対象画像を残す (unbounded)

CairoOperator::DEST_OUT

元画像がなかったところだけ、対象画像を残す

CairoOperator::DEST_ATOP

元画像の上にあったところだけ、対象画像を残す (unbounded)

CairoOperator::XOR

元画像と対象画像のどちらか一方だけがあった部分を表示する

CairoOperator::ADD

元画像と対象画像を足し合わせる

CairoOperator::SATURATE

CairoOperator::OVER と同様だが、元画像と対象画像の形が違うことを前提とする