public abstract class GraphicsEnvironment extends Object
GraphicsEnvironment
クラスは、特定のプラットフォーム上のJava(tm)アプリケーションで使用できるGraphicsDevice
オブジェクトとFont
オブジェクトのコレクションを記述します。このGraphicsEnvironment
のリソースは、ローカル・マシン上か、リモート・マシン上にあります。GraphicsDevice
オブジェクトは、画面、プリンタ、またはイメージ・バッファの場合があり、Graphics2D
描画メソッドのデスティネーションです。各GraphicsDevice
は、それに関連したいくつかのGraphicsConfiguration
オブジェクトを持ちます。これらのオブジェクトは、GraphicsDevice
を使用できるさまざまな構成を指定します。修飾子 | コンストラクタと説明 |
---|---|
protected |
GraphicsEnvironment()
インスタンスを直接生成できない抽象クラスです。
|
修飾子と型 | メソッドと説明 |
---|---|
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
を返します。GraphicsEnvironment
public static boolean isHeadless()
true
、そうでない場合はfalse
HeadlessException
public boolean isHeadlessInstance()
HeadlessException
がディスプレイ、キーボード、またはマウスに依存するグラフィックス環境の領域からスローされます。true
、そうでない場合はfalse
HeadlessException
, isHeadless()
public abstract GraphicsDevice[] getScreenDevices() throws HeadlessException
GraphicsDevice
オブジェクトの配列を返します。GraphicsDevice
オブジェクトを格納する配列HeadlessException
- isHeadless()がtrueを返した場合isHeadless()
public abstract GraphicsDevice getDefaultScreenDevice() throws HeadlessException
GraphicsDevice
を返します。GraphicsDevice
HeadlessException
- isHeadless()がtrueを返した場合isHeadless()
public abstract Graphics2D createGraphics(BufferedImage img)
BufferedImage
に描画するためのGraphics2D
オブジェクトを返します。img
- 指定されたBufferedImage
BufferedImage
に描画するために使用されるGraphics2D
NullPointerException
- 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, 2014, Oracle and/or its affiliates. All rights reserved.