モジュール java.desktop
パッケージ java.awt.font

クラスFontRenderContext

java.lang.Object
java.awt.font.FontRenderContext

public class FontRenderContext
extends Object
FontRenderContextクラスは、テキストの寸法を正しく測定するのに必要な情報のコンテナです。 テキストのサイズは、アウトラインをピクセルにマップする規則や、アプリケーションが提供する描画ヒントによって変わる場合があります。

そのような情報の一例としては、印刷上のポイントをピクセルにスケーリングする変換情報があります。 1ポイントは、1インチの1/72と定義されています。これは、伝統的な活版印刷以来使われているポイントとは、わずかに異なります。 600 dpiのデバイスで12ptとして描画される文字のサイズは、同じ文字を72 dpiのデバイスで12ptとして描画する場合とは異なります。これは、フォントの設計時に指定された、ピクセル境界の丸めやヒントなどの要因のためです。

アプリケーションで指定されたアンチエイリアス、および部分メトリックスが、ピクセル境界の丸めのために、文字のサイズに影響を与えることがあります。

通常、FontRenderContextのインスタンスはGraphics2Dオブジェクトから取得します。 直接構築したFontRenderContextは、実際のグラフィック・デバイスを表さない可能性が高く、予期しない結果や誤った結果になることがあります。

関連項目:
RenderingHints.KEY_TEXT_ANTIALIASING, RenderingHints.KEY_FRACTIONALMETRICS, Graphics2D.getFontRenderContext(), LineMetrics
  • コンストラクタのサマリー

    コンストラクタ 
    修飾子 コンストラクタ 説明
    protected FontRenderContext()
    新しいFontRenderContextオブジェクトを構築します。
      FontRenderContext​(AffineTransform tx, boolean isAntiAliased, boolean usesFractionalMetrics)
    オプションのAffineTransform、および新しく構築されるオブジェクトのアンチエイリアスと部分メトリックスの有無を判定する2つのboolean値からFontRenderContextオブジェクトを構築します。
      FontRenderContext​(AffineTransform tx, Object aaHint, Object fmHint)
    オプションのAffineTransform、および新しく構築されるオブジェクトのアンチエイリアスと部分メトリックスの有無を判定する2つのObject値からFontRenderContextオブジェクトを構築します。
  • メソッドのサマリー

    修飾子と型 メソッド 説明
    boolean equals​(FontRenderContext rhs)
    rhsの変換、アンチエイリアス、および部分メトリックスの値がこれと等しい場合はtrueを返します。
    boolean equals​(Object obj)
    objがFontRenderContextのインスタンスであり、その変換、アンチエイリアス、および部分メトリックスの値がこれと等しい場合はtrueを返します。
    Object getAntiAliasingHint()
    このFontRenderContextで使われている、テキスト・アンチエイリアスの描画モード・ヒントを返します。
    Object getFractionalMetricsHint()
    このFontRenderContextで使われている、テキスト部分メトリックスの描画モード・ヒントを返します。
    AffineTransform getTransform()
    このFontRenderContextで印刷上のポイントをピクセルにスケーリングするために使われる変換を返します。
    int getTransformType()
    このFontRenderContextのアフィン変換の種類を、AffineTransform.getType()で指定される整数で返します。
    int hashCode()
    このFontRenderContextのハッシュ・コードを返します。
    boolean isAntiAliased()
    このFontRenderContextで何らかのアンチエイリアス処理が指定されているかどうかを示すboolean値を返します。
    boolean isTransformed()
    このFontRenderContextオブジェクトが、変換された描画コンテキストでテキストを測定するかどうかを示します。
    boolean usesFractionalMetrics()
    このFontRenderContextでテキストの部分メトリックス・モードが使用されるかどうかを示すboolean値を返します。

    クラス java.lang.Objectで宣言されたメソッド

    clonefinalizegetClassnotifynotifyAlltoStringwaitwaitwait
  • コンストラクタの詳細

    • FontRenderContext

      protected FontRenderContext()
      新しいFontRenderContextオブジェクトを構築します。
    • FontRenderContext

      public FontRenderContext​(AffineTransform tx, boolean isAntiAliased, boolean usesFractionalMetrics)
      オプションのAffineTransform、および新しく構築されるオブジェクトのアンチエイリアスと部分メトリックスの有無を判定する2つのboolean値からFontRenderContextオブジェクトを構築します。 各場合とも、boolean値truefalseは、描画ヒント値ONOFFにそれぞれ対応します。

      ほかのヒント値を指定するには、描画ヒント値をパラメータとして指定するコンストラクタFontRenderContext(AffineTransform, Object, Object)を使用してください。

      パラメータ:
      tx - このFontRenderContextで印刷上のポイントをピクセルにスケーリングするために使われる変換。 nullの場合は恒等変換が使用される。
      isAntiAliased - 新しく構築されるオブジェクトのアンチエイリアスの有無を判定する。
      usesFractionalMetrics - 新しく構築されるオブジェクトの部分メトリックスの有無を判定する。
    • FontRenderContext

      public FontRenderContext​(AffineTransform tx, Object aaHint, Object fmHint)
      オプションのAffineTransform、および新しく構築されるオブジェクトのアンチエイリアスと部分メトリックスの有無を判定する2つのObject値からFontRenderContextオブジェクトを構築します。
      パラメータ:
      tx - このFontRenderContextで印刷上のポイントをピクセルにスケーリングするために使われる変換。 nullの場合は恒等変換が使用される。
      aaHint - - java.awt.RenderingHintsで定義されているテキストのアンチエイリアスの描画ヒント値の1つ。 ほかの値を指定するとIllegalArgumentExceptionがスローされる。 VALUE_TEXT_ANTIALIAS_DEFAULTも指定可能で、その場合、使用されるモードは実装により異なる。
      fmHint - - java.awt.RenderingHintsで定義されているテキスト部分描画ヒント値の1つ。 VALUE_FRACTIONALMETRICS_DEFAULTも指定可能で、その場合、使用されるモードは実装により異なる。 ほかの値を指定するとIllegalArgumentExceptionがスローされる
      例外:
      IllegalArgumentException - ヒントが、有効な値のどれでもない場合。
      導入されたバージョン:
      1.6
  • メソッドの詳細

    • isTransformed

      public boolean isTransformed()
      このFontRenderContextオブジェクトが、変換された描画コンテキストでテキストを測定するかどうかを示します。
      戻り値:
      このFontRenderContextオブジェクトが非恒等AffineTransform属性を持つ場合はtrue、それ以外の場合はfalse
      導入されたバージョン:
      1.6
      関連項目:
      getTransform()
    • getTransformType

      public int getTransformType()
      このFontRenderContextのアフィン変換の種類を、AffineTransform.getType()で指定される整数で返します。
      戻り値:
      変換の種類。
      導入されたバージョン:
      1.6
      関連項目:
      AffineTransform
    • getTransform

      public AffineTransform getTransform()
      このFontRenderContextで印刷上のポイントをピクセルにスケーリングするために使われる変換を返します。
      戻り値:
      このFontRenderContextAffineTransform
      関連項目:
      AffineTransform
    • isAntiAliased

      public boolean isAntiAliased()
      このFontRenderContextで何らかのアンチエイリアス処理が指定されているかどうかを示すboolean値を返します。 特定の描画ヒント値を取得するには、getAntiAliasingHint()を呼び出してください。
      戻り値:
      このFontRenderContextでテキストがアンチエイリアス処理されている場合はtrue、そうでない場合はfalse
      関連項目:
      RenderingHints.KEY_TEXT_ANTIALIASING, FontRenderContext(AffineTransform,boolean,boolean), FontRenderContext(AffineTransform,Object,Object)
    • usesFractionalMetrics

      public boolean usesFractionalMetrics()
      このFontRenderContextでテキストの部分メトリックス・モードが使用されるかどうかを示すboolean値を返します。 対応する描画ヒント値を取得するには、getFractionalMetricsHint()を呼び出してください。
      戻り値:
      このFontRenderContextで部分メトリックスに従ってレイアウトを行う場合はtrue、そうでない場合はfalse
      関連項目:
      RenderingHints.KEY_FRACTIONALMETRICS, FontRenderContext(AffineTransform,boolean,boolean), FontRenderContext(AffineTransform,Object,Object)
    • getAntiAliasingHint

      public Object getAntiAliasingHint()
      このFontRenderContextで使われている、テキスト・アンチエイリアスの描画モード・ヒントを返します。 これは、java.awt.RenderingHintsで定義されているテキスト・アンチエイリアスの描画ヒント値のいずれかになります。
      戻り値:
      このFontRenderContextで使われている、テキスト・アンチエイリアスの描画モード・ヒント。
      導入されたバージョン:
      1.6
    • getFractionalMetricsHint

      public Object getFractionalMetricsHint()
      このFontRenderContextで使われている、テキスト部分メトリックスの描画モード・ヒントを返します。 これは、java.awt.RenderingHintsで定義されているテキスト部分メトリックスの描画ヒント値のいずれかになります。
      戻り値:
      このFontRenderContextで使われている、テキスト部分メトリックスの描画モード・ヒント。
      導入されたバージョン:
      1.6
    • equals

      public boolean equals​(Object obj)
      objがFontRenderContextのインスタンスであり、その変換、アンチエイリアス、および部分メトリックスの値がこれと等しい場合はtrueを返します。
      オーバーライド:
      equals 、クラス:  Object
      パラメータ:
      obj - 等しいかどうかが判定されるオブジェクト
      戻り値:
      指定されたオブジェクトがこのFontRenderContextと等しい場合はtrue、そうでない場合はfalse
      関連項目:
      Object.hashCode()HashMap
    • equals

      public boolean equals​(FontRenderContext rhs)
      rhsの変換、アンチエイリアス、および部分メトリックスの値がこれと等しい場合はtrueを返します。
      パラメータ:
      rhs - 等しいかどうかが判定されるFontRenderContext
      戻り値:
      rhsがこのFontRenderContextと等しい場合はtrue、そうでない場合はfalse
      導入されたバージョン:
      1.4
    • hashCode

      public int hashCode()
      このFontRenderContextのハッシュ・コードを返します。
      オーバーライド:
      hashCode 、クラス:  Object
      戻り値:
      このオブジェクトのハッシュ・コード値。
      関連項目:
      Object.equals(java.lang.Object), System.identityHashCode(java.lang.Object)