public abstract class GraphicsEnvironment extends Object
GraphicsEnvironmentクラスは、特定のプラットフォーム上のJava(tm)アプリケーションで使用できるGraphicsDeviceオブジェクトとFontオブジェクトのコレクションを記述します。 このGraphicsEnvironmentのリソースは、ローカル・マシン上か、リモート・マシン上にあります。 GraphicsDeviceオブジェクトは、画面、プリンタ、またはイメージ・バッファの場合があり、Graphics2D描画メソッドのデスティネーションです。 各GraphicsDeviceは、それに関連したいくつかのGraphicsConfigurationオブジェクトを持ちます。 これらのオブジェクトは、GraphicsDeviceを使用できるさまざまな構成を指定します。 - 
コンストラクタのサマリーコンストラクタ 修飾子 コンストラクタ 説明 protectedGraphicsEnvironment()インスタンスを直接生成できない抽象クラスです。
- 
メソッドのサマリー修飾子と型 メソッド 説明 abstract Graphics2DcreateGraphics(BufferedImage img)指定されたBufferedImageにレンダリングするためのGraphics2Dオブジェクトを返します。abstract Font[]getAllFonts()このGraphicsEnvironmentで使用可能なすべてのフォントの1ポイントのサイズのインスタンスを含む配列を返します。abstract String[]getAvailableFontFamilyNames()Locale.getDefault()によって返されたデフォルト・ロケール向けにローカライズされた、このGraphicsEnvironment内のすべてのフォント・ファミリの名前を含む配列を返します。abstract String[]getAvailableFontFamilyNames(Locale l)指定されたロケール向けにローカライズされた、このGraphicsEnvironment内のすべてのフォント・ファミリの名前を含む配列を返します。PointgetCenterPoint()Windowを中央に配置するPointを返します。abstract GraphicsDevicegetDefaultScreenDevice()デフォルト画面GraphicsDeviceを返します。static GraphicsEnvironmentgetLocalGraphicsEnvironment()ローカルのGraphicsEnvironmentを返します。RectanglegetMaximumWindowBounds()中央に配置されたWindowの最大の境界を返します。abstract GraphicsDevice[]getScreenDevices()すべての画面GraphicsDeviceオブジェクトの配列を返します。static booleanisHeadless()ディスプレイ、キーボード、およびマウスがこの環境でサポートされるかどうかを判定します。booleanisHeadlessInstance()ディスプレイ、キーボード、およびマウスがこのグラフィックス環境でサポートされるかどうかを返します。voidpreferLocaleFonts()論理フォントから物理フォントのマッピングでのロケール固有のフォントの設定を指定します。voidpreferProportionalFonts()論理フォントから物理フォントへのマッピングで、プロポーショナル・フォント以外のフォント(dual-spaced CJKフォントなど)よりもプロポーショナル・フォントを優先する設定を指定します。booleanregisterFont(Font font)このGraphicsEnvironmentで作成されたFontを登録します。
- 
コンストラクタの詳細- 
GraphicsEnvironmentprotected GraphicsEnvironment()インスタンスを直接生成できない抽象クラスです。 インスタンスは、適切なファクトリまたはクエリー・メソッドから取得する必要があります。
 
- 
- 
メソッドの詳細- 
getLocalGraphicsEnvironmentpublic static GraphicsEnvironment getLocalGraphicsEnvironment()ローカルのGraphicsEnvironmentを返します。- 戻り値:
- ローカルのGraphicsEnvironment
 
- 
isHeadlesspublic static boolean isHeadless()ディスプレイ、キーボード、およびマウスがこの環境でサポートされるかどうかを判定します。 このメソッドがtrueを返す場合、HeadlessExceptionがディスプレイ、キーボード、またはマウスに依存するToolkitおよびGraphicsEnvironmentの領域からスローされます。- 戻り値:
- この環境がディスプレイ、キーボード、およびマウスをサポートできない場合はtrue、そうでない場合はfalse
- 導入されたバージョン:
- 1.4
- 関連項目:
- HeadlessException
 
- 
isHeadlessInstancepublic boolean isHeadlessInstance()ディスプレイ、キーボード、およびマウスがこのグラフィックス環境でサポートされるかどうかを返します。 このメソッドがtrueを返す場合、HeadlessExceptionがディスプレイ、キーボード、またはマウスに依存するグラフィックス環境の領域からスローされます。- 戻り値:
- ディスプレイ、キーボード、およびマウスがこの環境でサポートされる場合はtrue、そうでない場合はfalse
- 導入されたバージョン:
- 1.4
- 関連項目:
- HeadlessException,- isHeadless()
 
- 
getScreenDevicespublic abstract GraphicsDevice[] getScreenDevices() throws HeadlessExceptionすべての画面GraphicsDeviceオブジェクトの配列を返します。- 戻り値:
- 画面デバイスを表すすべてのGraphicsDeviceオブジェクトを格納する配列
- 例外:
- HeadlessException- isHeadless()がtrueを返した場合
- 関連項目:
- isHeadless()
 
- 
getDefaultScreenDevicepublic abstract GraphicsDevice getDefaultScreenDevice() throws HeadlessExceptionデフォルト画面GraphicsDeviceを返します。- 戻り値:
- デフォルトの画面デバイスを表すGraphicsDevice
- 例外:
- HeadlessException- isHeadless()がtrueを返した場合
- 関連項目:
- isHeadless()
 
- 
createGraphicspublic abstract Graphics2D createGraphics(BufferedImage img)指定されたBufferedImageにレンダリングするためのGraphics2Dオブジェクトを返します。- パラメータ:
- img- 指定された- BufferedImage
- 戻り値:
- 指定されたBufferedImageに描画するために使用されるGraphics2D
- 例外:
- NullPointerException-- imgがnullの場合
 
- 
getAllFontspublic abstract Font[] getAllFonts()このGraphicsEnvironmentで使用可能なすべてのフォントの1ポイントのサイズのインスタンスを含む配列を返します。 ユーザーに特定のフォントを選択させる場合に、よく使用されます。 アプリケーションは選択済みインスタンスにderiveFontメソッドを呼び出して、フォントのサイズ変更と、各種フォント属性の設定を行うことができます。このメソッドにより、アプリケーションはどの Fontインスタンスを使用してテキストを描画するかを、もっとも正確に制御できるようになります。 このGraphicsEnvironmentのフォントが複数のプログラム可能なバリエーションを持つ場合には、そのFontの1つのインスタンスだけが配列で返され、ほかのバリエーションはアプリケーションによって引き出されなければいけません。この環境のフォントがマルチプル・マスター・フォントのように複数のプログラム可能なバリエーションを持つ場合には、そのフォントの1つのインスタンスだけが Font配列で返され、 ほかのバリエーションはアプリケーションによって引き出されなければいけません。- 戻り値:
- Fontオブジェクトの配列
- 導入されたバージョン:
- 1.2
- 関連項目:
- getAvailableFontFamilyNames(),- Font,- Font.deriveFont(int, float),- Font.getFontName()
 
- 
getAvailableFontFamilyNamespublic abstract String[] getAvailableFontFamilyNames()Locale.getDefault()によって返されたデフォルト・ロケール向けにローカライズされた、このGraphicsEnvironment内のすべてのフォント・ファミリの名前を含む配列を返します。一般的な使い方では、ユーザーが特定のファミリ名を選択できるようにします。 アプリケーションでフォントの作成時に、BoldやItalicなどのスタイルとともにこの名前を指定できるため、フォント・システムに、同じフォント・ファミリの複数のフォントの中でもっとも適切なものを選択する柔軟性を与えます。 - 戻り値:
- デフォルト・ロケールにローカライズされたフォント・ファミリ名を格納するStringの配列、またはこのロケールの名前が存在しない場合は適切な代替名。
- 導入されたバージョン:
- 1.2
- 関連項目:
- getAllFonts(),- Font,- Font.getFamily()
 
- 
getAvailableFontFamilyNames指定されたロケール向けにローカライズされた、このGraphicsEnvironment内のすべてのフォント・ファミリの名前を含む配列を返します。一般的な使い方では、ユーザーが特定のファミリ名を選択できるようにします。 アプリケーションでフォントの作成時に、BoldやItalicなどのスタイルとともにこの名前を指定できるため、フォント・システムに、同じフォント・ファミリの複数のフォントの中でもっとも適切なものを選択する柔軟性を与えます。 - パラメータ:
- l- 特定の地理的、政治的、または文化的領域を表す- Localeオブジェクト。- nullを指定すると、- Locale.getDefault()を指定したことになる。
- 戻り値:
- 指定されたLocaleにローカライズされたフォント・ファミリ名を格納するStringの配列、または指定されたロケールの名前が存在しない場合は適切な代替名。
- 導入されたバージョン:
- 1.2
- 関連項目:
- getAllFonts(),- Font,- Font.getFamily()
 
- 
registerFontpublic boolean registerFont(Font font)このGraphicsEnvironmentで作成されたFontを登録します。 作成されたフォントは、Font.createFont(int, java.io.InputStream)を呼び出して返されたフォント、またはFont.deriveFont(int, float)を呼び出して作成されたフォントから派生したフォントです。 そのようなフォントは、このメソッドの呼出し後に、名前またはファミリ名で新しいFontを構築するために使用できるほか、このアプリケーションまたはアプレットの実行コンテキスト内でgetAvailableFontFamilyNames()およびgetAllFonts()を呼び出すことで列挙できます。 つまりアプレットは、ほかのアプレットが識別できるような方法ではフォントを登録できません。このメソッドがフォントを登録できずに falseを返す理由は、次のとおりです。- フォントが、作成された Fontではありません。
- フォントが、このGraphicsEnvironment内にすでに存在する作成されていないFontと競合しています。 たとえば名前がシステム・フォントの名前である場合や、Fontクラスのマニュアルに記載された論理フォントの名前である場合です。 システム・フォントとファミリ名が同じ場合にフォントが競合するかどうかは、実装ごとに異なります。アプリケーションは、以前作成されたフォントの登録よりも新しく作成されたフォントを優先できます。 
 - パラメータ:
- font- 登録されるフォント
- 戻り値:
- このGraphicsEnvironmentでfontが正常に登録された場合はtrue。
- 例外:
- NullPointerException-- fontがnullである場合
- 導入されたバージョン:
- 1.6
 
- フォントが、作成された 
- 
preferLocaleFontspublic void preferLocaleFonts()論理フォントから物理フォントのマッピングでのロケール固有のフォントの設定を指定します。 このメソッドを呼び出すことは、フォントの描画で主要な書記法(デフォルトのエンコーディングおよび初期のデフォルトのロケールによって指示された書記法)を主に使用する必要があることを意味します。 たとえば、主要な書記法が日本語の場合、可能なかぎり日本語を使用して文字を描画する必要があり、ほかのフォントは日本語のフォントがグリフを持たない文字にのみ使用する必要があります。このメソッドの呼出しによって実行されるフォントの描画動作での実際の変更は、実装によって異なります。まったく影響がない場合もあれば、要求された動作がデフォルトの動作に一致している場合もあります。 この動作は、軽量コンポーネントのフォントの描画とピア・コンポーネントのフォントの描画で異なることがあります。 このメソッドを呼び出すと、別のフォントが要求されるため、クライアントは別のメトリックスを予想する必要があり、ウィンドウのサイズとレイアウトの再計算が必要になる場合もあります。 そのため、このメソッドはユーザー・インタフェースの初期化前に呼び出す必要があります。 - 導入されたバージョン:
- 1.5
 
- 
preferProportionalFontspublic void preferProportionalFonts()論理フォントから物理フォントへのマッピングで、プロポーショナル・フォント以外のフォント(dual-spaced CJKフォントなど)よりもプロポーショナル・フォントを優先する設定を指定します。 デフォルトのマッピングに、プロポーショナルとプロポーショナル以外の形式が存在するフォントが含まれる場合、このメソッドを呼び出すことは、マッピングでプロポーショナル形式を使用する必要があることを指示します。このメソッドの呼出しによって実行されるフォントの描画動作での実際の変更は、実装によって異なります。まったく影響がない場合もあります。 この動作は、軽量コンポーネントのフォントの描画とピア・コンポーネントのフォントの描画で異なることがあります。 このメソッドを呼び出すと、別のフォントが要求されるため、クライアントは別のメトリックスを予想する必要があり、ウィンドウのサイズとレイアウトの再計算が必要になる場合もあります。 そのため、このメソッドはユーザー・インタフェースの初期化前に呼び出す必要があります。 - 導入されたバージョン:
- 1.5
 
- 
getCenterPointpublic Point getCenterPoint() throws HeadlessExceptionWindowを中央に配置するPointを返します。 中央に配置されたWindowがgetMaximumWindowBounds()を使用して表示可能な領域に収まるかどうかをチェックすることをお薦めします。- 戻り値:
- Windowを中央に配置するポイント
- 例外:
- HeadlessException- isHeadless()がtrueを返した場合
- 導入されたバージョン:
- 1.4
- 関連項目:
- getMaximumWindowBounds()
 
- 
getMaximumWindowBoundspublic Rectangle getMaximumWindowBounds() throws HeadlessException中央に配置されたWindowの最大の境界を返します。 これらの境界はタスク・バーやメニュー・バーなどのネイティブのウィンドウ処理システムのオブジェクトを処理します。 返された境界は1つの例外を持つ単一のディスプレイに常駐します。すべてのディスプレイを通してWindowが中央に配置されるマルチスクリーン・システムの場合、このメソッドは全体のディスプレイ領域の境界を返します。単一のディスプレイの使用できる境界を取得するには、 GraphicsConfiguration.getBounds()およびToolkit.getScreenInsets()を使用します。- 戻り値:
- 中央に配置されたWindowの最大の境界
- 例外:
- HeadlessException- isHeadless()がtrueを返した場合
- 導入されたバージョン:
- 1.4
- 関連項目:
- getCenterPoint(),- GraphicsConfiguration.getBounds(),- Toolkit.getScreenInsets(java.awt.GraphicsConfiguration)
 
 
-