クラスGraphicsConfiguration

java.lang.Object
java.awt.GraphicsConfiguration

public abstract class GraphicsConfiguration extends Object
GraphicsConfigurationクラスは、プリンタやモニターなどのグラフィックス・デスティネーションの特性を記述します。 1つのグラフィックス・デバイスには、異なる描画モードまたは機能を表す多くの関連するGraphicsConfigurationがあります。 対応するネイティブ構造はプラットフォーム間で異なります。 たとえば、X11ウィンドウ・システムでは、各表示はそれぞれ異なるGraphicsConfigurationです。 Microsoft Windowsでは、GraphicsConfigurationは現在の解像度と色深度で使用できるPixelFormatsを表示します。

デスクトップ領域が物理的に複数の画面デバイスにまたがる仮想デバイスのマルチスクリーン環境では、GraphicsConfigurationオブジェクトの境界は、仮想の座標系を基準にしています。 コンポーネントの位置を設定する場合は、次のコード・サンプルで示すように、getBoundsを使って目的のGraphicsConfigurationの境界を取得し、GraphicsConfigurationの座標との位置をオフセットします。

     Frame f = new Frame(gc);  // where gc is a GraphicsConfiguration
     Rectangle bounds = gc.getBounds();
     f.setLocation(10 + bounds.x, 10 + bounds.y); 

環境が仮想デバイス環境かどうかを判定するには、システムにあるすべてのGraphicsConfigurationオブジェクトでgetBoundsを呼び出します。 返された境界の原点のいずれかが(0, 0)以外であれば、環境は仮想デバイス環境です。

getBoundsを使って仮想デバイスの境界も判定できます。 そのためには、まずシステムにあるすべてのGraphicsConfigurationオブジェクトでgetBoundsを呼び出します。 続いて、getBoundsの呼び出しから返された境界のすべての和集合を計算します。 和集合が仮想デバイスの境界です。 次のコード・サンプルは、仮想デバイスの境界を計算したものです。

     Rectangle virtualBounds = new Rectangle();
     GraphicsEnvironment ge = GraphicsEnvironment.
             getLocalGraphicsEnvironment();
     GraphicsDevice[] gs =
             ge.getScreenDevices();
     for (int j = 0; j < gs.length; j++) {
         GraphicsDevice gd = gs[j];
         GraphicsConfiguration[] gc =
             gd.getConfigurations();
         for (int i=0; i < gc.length; i++) {
             virtualBounds =
                 virtualBounds.union(gc[i].getBounds());
         }
     } 

関連項目:
  • コンストラクタのサマリー

    コンストラクタ
    修飾子
    コンストラクタ
    説明
    protected
    これは、インスタンスを直接には生成できない抽象クラスです。
  • メソッドのサマリー

    修飾子と型
    メソッド
    説明
    createCompatibleImage(int width, int height)
    このGraphicsConfigurationと互換性のあるデータ・レイアウトとカラー・モデルを持つBufferedImageを返します。
    createCompatibleImage(int width, int height, int transparency)
    指定された透明度をサポートし、このGraphicsConfigurationと互換性のあるデータ・レイアウトとカラー・モデルを持つBufferedImageを返します。
    createCompatibleVolatileImage(int width, int height)
    このGraphicsConfigurationと互換性のあるデータ・レイアウトとカラー・モデルを持つVolatileImageを返します。
    createCompatibleVolatileImage(int width, int height, int transparency)
    このGraphicsConfigurationと互換性のあるデータ・レイアウトとカラー・モデルを持つVolatileImageを返します。
    createCompatibleVolatileImage(int width, int height, ImageCapabilities caps)
    指定されたイメージ機能を使用して、このGraphicsConfigurationと互換性のあるデータ・レイアウトとカラー・モデルを持つVolatileImageを返します。
    createCompatibleVolatileImage(int width, int height, ImageCapabilities caps, int transparency)
    指定されたイメージ機能と透明度の値を使用して、このGraphicsConfigurationと互換性のあるデータ・レイアウトとカラー・モデルを持つVolatileImageを返します。
    abstract Rectangle
    デバイス座標内のGraphicsConfigurationの境界を返します。
    このGraphicsConfigurationのバッファリング機能を返します。
    abstract ColorModel
    このGraphicsConfigurationに関連付けられたColorModelを返します。
    abstract ColorModel
    getColorModel(int transparency)
    指定された透明度をサポートする、このGraphicsConfigurationに関連付けられたColorModelを返します。
    このGraphicsConfigurationのデフォルトのAffineTransformを返します。
    このGraphicsConfigurationに関連付けられたGraphicsDeviceを返します。
    このGraphicsConfigurationのイメージ機能を返します。
    ユーザー空間の72単位がデバイス空間の1インチになるように、GraphicsConfigurationのデフォルトのAffineTransformと連結できるAffineTransformを返します。
    boolean
    このGraphicsConfigurationが半透明性の種類PERPIXEL_TRANSLUCENTをサポートしているかどうかを返します。

    クラスオブジェクトで宣言されたメソッド

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    修飾子と型
    メソッド
    説明
    protected Object
    このオブジェクトのコピーを作成して、返します。
    boolean
    このオブジェクトと他のオブジェクトが等しいかどうかを示します。
    protected void
    削除予定のため非推奨: このAPI要素は、将来のバージョンで削除される可能性があります。
    最終決定は非推奨であり、将来のリリースで削除される可能性があります。
    final Class<?>
    このObjectの実行時クラスを返します。
    int
    このオブジェクトに対するハッシュ・コード値を返します。
    final void
    このオブジェクトのモニターで待機中のスレッドを1つ再開します。
    final void
    このオブジェクトのモニターで待機中のすべてのスレッドを再開します。
    オブジェクトの文字列表現を返します。
    final void
    現在のスレッドが目覚めるまで待機します。通常、notifiedまたはinterruptedです。
    final void
    wait(long timeoutMillis)
    現在のスレッドは、通常、notifiedまたはinterruptedであるか、一定のリアルタイムが経過するまで、目覚めるまで待機します。
    final void
    wait(long timeoutMillis, int nanos)
    現在のスレッドは、通常、notifiedまたはinterruptedであるか、一定のリアルタイムが経過するまで、目覚めるまで待機します。
  • コンストラクタの詳細

  • メソッドの詳細

    • getDevice

      public abstract GraphicsDevice getDevice()
      このGraphicsConfigurationに関連付けられたGraphicsDeviceを返します。
      戻り値:
      このGraphicsConfigurationに関連付けられたGraphicsDeviceオブジェクト。
    • createCompatibleImage

      public BufferedImage createCompatibleImage(int width, int height)
      このGraphicsConfigurationと互換性のあるデータ・レイアウトとカラー・モデルを持つBufferedImageを返します。 このメソッドは、デバイスをメモリー・マッピングすることとは無関係です。 返されたBufferedImageは、このネイティブなデバイス構成にもっとも近いレイアウトとカラー・モデルを持っているため、このデバイスに最適にブリットできます。
      パラメータ:
      width - 返されたBufferedImageの幅
      height - 返されたBufferedImageの高さ
      戻り値:
      データ・レイアウトとカラー・モデルがこのGraphicsConfigurationと互換性のあるBufferedImage
    • createCompatibleImage

      public BufferedImage createCompatibleImage(int width, int height, int transparency)
      指定された透明度をサポートし、このGraphicsConfigurationと互換性のあるデータ・レイアウトとカラー・モデルを持つBufferedImageを返します。 このメソッドは、デバイスをメモリー・マッピングすることとは無関係です。 返されるBufferedImageは、このGraphicsConfigurationを持つデバイスに最適にブリットできるレイアウトおよびカラー・モデルを持ちます。
      パラメータ:
      width - 返されたBufferedImageの幅
      height - 返されたBufferedImageの高さ
      transparency - 指定された透明度モード
      戻り値:
      データ・レイアウトとカラー・モデルがこのGraphicsConfigurationと互換性があり、指定された透明度をサポートするBufferedImage
      スロー:
      IllegalArgumentException - 透明度が有効な値でない場合
      関連項目:
    • createCompatibleVolatileImage

      public VolatileImage createCompatibleVolatileImage(int width, int height)
      このGraphicsConfigurationと互換性のあるデータ・レイアウトとカラー・モデルを持つVolatileImageを返します。 返されたVolatileImageには、基本となるグラフィックス・デバイスのために最適に格納されたデータが含まれている可能性があるため、プラットフォーム固有の描画の高速化の利点が得られる可能性があります。
      パラメータ:
      width - 返されたVolatileImageの幅
      height - 返されたVolatileImageの高さ
      戻り値:
      データ・レイアウトとカラー・モデルがこのGraphicsConfigurationと互換性のあるVolatileImage
      導入されたバージョン:
      1.4
      関連項目:
    • createCompatibleVolatileImage

      public VolatileImage createCompatibleVolatileImage(int width, int height, int transparency)
      このGraphicsConfigurationと互換性のあるデータ・レイアウトとカラー・モデルを持つVolatileImageを返します。 返されたVolatileImageには、基本となるグラフィックス・デバイスのために最適に格納されたデータが含まれている可能性があるため、プラットフォーム固有の描画の高速化の利点が得られる可能性があります。
      パラメータ:
      width - 返されたVolatileImageの幅
      height - 返されたVolatileImageの高さ
      transparency - 指定された透明度モード
      戻り値:
      データ・レイアウトとカラー・モデルがこのGraphicsConfigurationと互換性のあるVolatileImage
      スロー:
      IllegalArgumentException - 透明度が有効な値でない場合
      導入されたバージョン:
      1.5
      関連項目:
    • createCompatibleVolatileImage

      public VolatileImage createCompatibleVolatileImage(int width, int height, ImageCapabilities caps) throws AWTException
      指定されたイメージ機能を使用して、このGraphicsConfigurationと互換性のあるデータ・レイアウトとカラー・モデルを持つVolatileImageを返します。 capsパラメータがnullである場合は、このパラメータが事実上無視され、このメソッドはImageCapabilities制約には関係なくVolatileImageを作成します。 返されたVolatileImageは、このネイティブなデバイス構成にもっとも近いレイアウトとカラー・モデルを持っているため、このデバイスに最適にブリットできます。
      パラメータ:
      width - 返されたVolatileImageの幅
      height - 返されたVolatileImageの高さ
      caps - イメージ機能
      戻り値:
      データ・レイアウトとカラー・モデルがこのGraphicsConfigurationと互換性のあるVolatileImage
      スロー:
      AWTException - 指定されたイメージ機能をこのグラフィックス構成が満足できなかった場合
      導入されたバージョン:
      1.4
    • createCompatibleVolatileImage

      public VolatileImage createCompatibleVolatileImage(int width, int height, ImageCapabilities caps, int transparency) throws AWTException
      指定されたイメージ機能と透明度の値を使用して、このGraphicsConfigurationと互換性のあるデータ・レイアウトとカラー・モデルを持つVolatileImageを返します。 capsパラメータがnullである場合は、このパラメータが事実上無視され、このメソッドはImageCapabilities制約には関係なくVolatileImageを作成します。 返されたVolatileImageは、このネイティブなデバイス構成にもっとも近いレイアウトとカラー・モデルを持っているため、このデバイスに最適にブリットできます。
      パラメータ:
      width - 返されたVolatileImageの幅
      height - 返されたVolatileImageの高さ
      caps - イメージ機能
      transparency - 指定された透明度モード
      戻り値:
      データ・レイアウトとカラー・モデルがこのGraphicsConfigurationと互換性のあるVolatileImage
      スロー:
      IllegalArgumentException - 透明度が有効な値でない場合
      AWTException - 指定されたイメージ機能をこのグラフィックス構成が満足できなかった場合
      導入されたバージョン:
      1.5
      関連項目:
    • getColorModel

      public abstract ColorModel getColorModel()
      このGraphicsConfigurationに関連付けられたColorModelを返します。
      戻り値:
      このGraphicsConfigurationに関連付けられたColorModelオブジェクト。
    • getColorModel

      public abstract ColorModel getColorModel(int transparency)
      指定された透明度をサポートする、このGraphicsConfigurationに関連付けられたColorModelを返します。
      パラメータ:
      transparency - 指定された透明度モード
      戻り値:
      このGraphicsConfigurationに関連し、指定された透明度をサポートするColorModelオブジェクト。透明度が有効な値でない場合はnull。
      関連項目:
    • getDefaultTransform

      public abstract AffineTransform getDefaultTransform()
      このGraphicsConfigurationのデフォルトのAffineTransformを返します。 このAffineTransformは通常、ほとんどの標準画面では恒等変換になります。 デフォルトのAffineTransformは、72ユーザー空間座標単位がデバイス空間のおよそ1インチに対応するようにデバイスに座標をマッピングします。 正規化変換を使用すると、このマッピングをより正確にすることができます。 画面デバイスとプリンタ・デバイスのデフォルトのAffineTransformで定義されている座標空間の座標は、デバイスのターゲット領域の左上隅に原点を持ち、X座標は右方向に、Y座標は下方向に値が増加します。 createCompatibleImageで作成されない、デバイスに関連していないイメージ・バッファなどでは、このAffineTransformは恒等変換になります。
      戻り値:
      このGraphicsConfigurationのデフォルトのAffineTransform
    • getNormalizingTransform

      public abstract AffineTransform getNormalizingTransform()
      ユーザー空間の72単位がデバイス空間の1インチになるように、GraphicsConfigurationのデフォルトのAffineTransformと連結できるAffineTransformを返します。

      gという特定のGraphics2Dでは、次の擬似コードを使って変換をリセットし、このようなマッピングを作成できます。

           GraphicsConfiguration gc = g.getDeviceConfiguration();
      
           g.setTransform(gc.getDefaultTransform());
           g.transform(gc.getNormalizingTransform());
      
      ただし、このAffineTransformは場合によって、たとえばプリンタ出力やメタファイル出力の場合に恒等変換になり、このAffineTransformの正確さは元にあるシステムによって指定される情報と同じ程度になります。 createCompatibleImageで作成されない、デバイスに関連していないイメージ・バッファなどでは、有効な距離測定法がないため、このAffineTransformは恒等変換になります。

      戻り値:
      ユーザー空間の72単位がデバイス空間の1インチに相当するように、デフォルトのAffineTransformに連結するAffineTransform
    • getBounds

      public abstract Rectangle getBounds()
      デバイス座標内のGraphicsConfigurationの境界を返します。 仮想デバイスを持つマルチスクリーン環境では、境界は負のXまたはYの原点を持つことができます。
      戻り値:
      このGraphicsConfigurationによってカバーされる領域境界。
      導入されたバージョン:
      1.3
    • getBufferCapabilities

      public BufferCapabilities getBufferCapabilities()
      このGraphicsConfigurationのバッファリング機能を返します。
      戻り値:
      このグラフィックス構成オブジェクトのバッファリング機能
      導入されたバージョン:
      1.4
    • getImageCapabilities

      public ImageCapabilities getImageCapabilities()
      このGraphicsConfigurationのイメージ機能を返します。
      戻り値:
      このグラフィックス構成オブジェクトのイメージ機能
      導入されたバージョン:
      1.4
    • isTranslucencyCapable

      public boolean isTranslucencyCapable()
      このGraphicsConfigurationが半透明性の種類PERPIXEL_TRANSLUCENTをサポートしているかどうかを返します。
      戻り値:
      指定されたGraphicsConfigurationが半透明性効果をサポートしているかどうか。
      導入されたバージョン:
      1.7
      関連項目: