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