JavaTM 2
Platform
Std. Ed. v1.4.0

java.awt
インタフェース Composite

既知の実装クラスの一覧:
AlphaComposite

public interface Composite

Composite インタフェースは、CompositeContext とともに、基となるグラフィックス領域に描画プリミティブを構成するメソッドを定義します。Composite は、Graphics2D コンテキストで設定されたあと、事前定義されている規則に従って、すでに描画されている色と現在描画中の形状、テキスト、またはイメージを結合します。このインタフェースを実装するクラスは、その規則と、特定の操作のコンテキストを作成するためのメソッドを提供します。CompositeContext は、合成操作によって使用される環境であり、合成操作の開始前に Graphics2D によって作成されます。CompositeContext には、合成操作で必要なプライベート情報とリソースが含まれます。CompositeContext が必要なくなったら、合成操作に割り当てられているリソースを再生するために Graphics2D オブジェクトによって破棄されます。

Composite を実装するクラスのインスタンスは不変でなければなりません。その理由は、setComposite メソッドを使って属性として設定されたとき、あるいは Graphics2D オブジェクトが複製されたときには、Graphics2D はこれらのオブジェクトを複製しないからです。これは、Graphics2D のコンテキストで設定されたあとで Composite オブジェクトが変更されると、Graphics2D の描画の動作が不安定になることがあり、これを防ぐためです。

このインタフェースを使うと、ターゲットデバイスまたはイメージ上のピクセルの内容が不特定のコードに対してオープンになります。このため、スクリーンデバイスに直接描画する場合、このインタフェースを実装するカスタムオブジェクトの使用は、readDisplayPixels AWTPermission によって制御されます。Component から取得された Graphics2DsetComposite メソッドにそのようなオブジェクトが渡されるときは、アクセス権がチェックされます。

関連項目:
AlphaComposite, CompositeContext, Graphics2D.setComposite(java.awt.Composite)

メソッドの概要
 CompositeContext createContext(ColorModel srcColorModel, ColorModel dstColorModel, RenderingHints hints)
          合成操作を実行するのに使用される状態を格納するコンテキストを作成します。
 

メソッドの詳細

createContext

public CompositeContext createContext(ColorModel srcColorModel,
                                      ColorModel dstColorModel,
                                      RenderingHints hints)
合成操作を実行するのに使用される状態を格納するコンテキストを作成します。マルチスレッド環境では、1 つの Composite オブジェクトに対して同時に複数のコンテキストが存在することがあります。

パラメータ:
srcColorModel - ソースの ColorModel
dstColorModel - デスティネーションの ColorModel
hints - コンテキストオブジェクトが描画の選択肢を選択するときに使用するヒント
戻り値:
合成操作を実行するために使用される CompositeContext オブジェクト

JavaTM 2
Platform
Std. Ed. v1.4.0

バグの報告と機能のリクエスト
これ以外の API リファレンスおよび開発者用ドキュメントについては、 Java 2 SDK SE 開発者用ドキュメントを参照してください。 開発者向けの詳細な解説、概念の概要、用語の定義、バグの回避策、 およびコード実例が含まれています。

Java、Java 2D、および JDBC は米国ならびにその他の国における米国 Sun Microsystems, Inc. の商標もしくは登録商標です。
Copyright 1993-2002 Sun Microsystems, Inc. 901 San Antonio Road
Palo Alto, California, 94303, U.S.A. All Rights Reserved.