public abstract class GraphicsEnvironment extends Object
GraphicsEnvironment クラスは、特定のプラットフォーム上の Java(tm) アプリケーションで使用できる GraphicsDevice オブジェクトと Font オブジェクトのコレクションを記述します。 この GraphicsEnvironment のリソースは、ローカルマシン上か、リモートマシン上にあります。GraphicsDevice オブジェクトは、画面、プリンタ、またはイメージバッファーの場合があり、Graphics2D 描画メソッドのデスティネーションです。 各 GraphicsDevice は、それに関連したいくつかの GraphicsConfiguration オブジェクトを持ちます。これらのオブジェクトは、GraphicsDevice を使用できるさまざまな構成を指定します。| 修飾子 | コンストラクタと説明 |
|---|---|
protected |
GraphicsEnvironment()
インスタンスを直接生成できない abstract クラスです。
|
| 修飾子と型 | メソッドと説明 |
|---|---|
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 を登録します。 |
protected GraphicsEnvironment()
public static GraphicsEnvironment getLocalGraphicsEnvironment()
GraphicsEnvironment を返します。GraphicsEnvironmentpublic static boolean isHeadless()
true、そうでない場合は falseHeadlessExceptionpublic boolean isHeadlessInstance()
HeadlessException がディスプレイ、キーボード、またはマウスに依存するグラフィックス環境の領域からスローされます。true、そうでない場合は falseHeadlessException, isHeadless()public abstract GraphicsDevice[] getScreenDevices() throws HeadlessException
GraphicsDevice オブジェクトの配列を返します。GraphicsDevice オブジェクトを格納する配列HeadlessException - isHeadless() が true を返した場合isHeadless()public abstract GraphicsDevice getDefaultScreenDevice() throws HeadlessException
GraphicsDevice を返します。GraphicsDeviceHeadlessException - isHeadless() が true を返した場合isHeadless()public abstract Graphics2D createGraphics(BufferedImage img)
BufferedImage に描画するための Graphics2D オブジェクトを返します。img - 指定された BufferedImageBufferedImage に描画するために使用される Graphics2DNullPointerException - img が null の場合public abstract Font[] getAllFonts()
GraphicsEnvironment で使用可能なすべてのフォントの 1 ポイントのサイズのインスタンスを含む配列を返します。通常の使い方では、ユーザーは特定のフォントを選択できます。 アプリケーションは選択済みインスタンスに deriveFont メソッドを呼び出して、フォントのサイズ変更と、各種フォント属性の設定を行うことができます。
このメソッドにより、アプリケーションはどの Font インスタンスを使用してテキストを描画するかを、もっとも正確に制御できるようになります。 この GraphicsEnvironment のフォントが複数のプログラム可能なバリエーションを持つ場合には、その Font の 1 つのインスタンスだけが配列で返され、ほかのバリエーションはアプリケーションによって引き出されなければいけません。
この環境のフォントがマルチプルマスターフォントのように複数のプログラム可能なバリエーションを持つ場合には、そのフォントの 1 つのインスタンスだけが Font 配列で返され、ほかのバリエーションはアプリケーションによって引き出されなければいけません。
Font オブジェクトの配列getAvailableFontFamilyNames(), Font, Font.deriveFont(int, float), Font.getFontName()public abstract String[] getAvailableFontFamilyNames()
Locale.getDefault() によって返されたデフォルトロケール向けにローカライズされた、この GraphicsEnvironment 内のすべてのフォントファミリの名前を含む配列を返します。
一般的な使い方では、ユーザーが特定のファミリ名を選択できるようにします。アプリケーションでフォントの作成時に、Bold や Italic などのスタイルとともにこの名前を指定できるため、フォントシステムに、同じフォントファミリの複数のフォントの中でもっとも適切なものを選択する柔軟性を与えます。
String の配列、またはこのロケールの名前が存在しない場合は適切な代替名。getAllFonts(), Font, Font.getFamily()public abstract String[] getAvailableFontFamilyNames(Locale l)
GraphicsEnvironment 内のすべてのフォントファミリの名前を含む配列を返します。
一般的な使い方では、ユーザーが特定のファミリ名を選択できるようにします。アプリケーションでフォントの作成時に、Bold や Italic などのスタイルとともにこの名前を指定できるため、フォントシステムに、同じフォントファミリの複数のフォントの中でもっとも適切なものを選択する柔軟性を与えます。
l - 特定の地理的、政治的、または文化的領域を表す Locale オブジェクト。 null を指定すると、Locale.getDefault() を指定したことになる。Locale にローカライズされたフォントファミリ名を格納する String の配列、または指定されたロケールの名前が存在しない場合は適切な代替名。getAllFonts(), Font, Font.getFamily()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 クラスのマニュアルに記載された論理フォントの名前である場合です。システムフォントとファミリ名が同じ場合にフォントが競合するかどうかは、実装ごとに異なります。
アプリケーションは、以前作成されたフォントの登録よりも新しく作成されたフォントを優先できます。
GraphicsEnvironment で font が正常に登録された場合は true。NullPointerException - font が null の場合public void preferLocaleFonts()
このメソッドの呼び出しによって実行されるフォントの描画動作での実際の変更は、実装によって異なります。まったく影響がない場合もあれば、要求された動作がデフォルトの動作に一致している場合もあります。この動作は、軽量コンポーネントのフォントの描画とピアコンポーネントのフォントの描画で異なることがあります。このメソッドを呼び出すと、別のフォントが要求されるため、クライアントは別のメトリクスを予想する必要があり、ウィンドウのサイズとレイアウトの再計算が必要になる場合もあります。そのため、このメソッドはユーザーインタフェースの初期化前に呼び出す必要があります。
public void preferProportionalFonts()
このメソッドの呼び出しによって実行されるフォントの描画動作での実際の変更は、実装によって異なります。まったく影響がない場合もあります。この動作は、軽量コンポーネントのフォントの描画とピアコンポーネントのフォントの描画で異なることがあります。このメソッドを呼び出すと、別のフォントが要求されるため、クライアントは別のメトリクスを予想する必要があり、ウィンドウのサイズとレイアウトの再計算が必要になる場合もあります。そのため、このメソッドはユーザーインタフェースの初期化前に呼び出す必要があります。
public Point getCenterPoint() throws HeadlessException
HeadlessException - isHeadless() が true を返した場合getMaximumWindowBounds()public Rectangle getMaximumWindowBounds() throws HeadlessException
単一のディスプレイの使用できる境界を取得するには、GraphicsConfiguration.getBounds() および Toolkit.getScreenInsets() を使用します。
HeadlessException - isHeadless() が true を返した場合getCenterPoint(), GraphicsConfiguration.getBounds(), Toolkit.getScreenInsets(java.awt.GraphicsConfiguration) バグまたは機能を送信
詳細な API リファレンスおよび開発者ドキュメントについては、Java SE のドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright © 1993, 2013, Oracle and/or its affiliates. All rights reserved.