モジュール java.desktop
パッケージ javax.print.attribute

クラスSize2DSyntax

java.lang.Object
javax.print.attribute.Size2DSyntax
すべての実装されたインタフェース:
Serializable, Cloneable
直系の既知のサブクラス:
MediaSize

public abstract class Size2DSyntax extends Object implements Serializable, Cloneable
クラスSize2DSyntaxは、2ディメンションでサイズを示すすべての属性の共通実装を提供する抽象基本クラスです。

2次元サイズ属性の値は、XディメンションとYディメンションの2つの項目で構成されます。 2次元のサイズの属性値は、2つの値を提供し、その値を測定する単位を示すことによって構築されます。 メソッドは2次元のサイズの属性値を返すために提供され、値を返す単位を示します。 もっとも一般的な2つのサイズの単位は、インチ(in)とミリメートル(mm)で、これらの単位を示すためにエクスポートされる定数INCHMMが提供されます。

2次元のサイズの属性値は、いったん構築されると変更できません。

設計

2次元サイズ属性のXおよびYディメンション値は、マイクロ・メートル(µm)の単位で整数で格納されます。ここで、1マイクロメートル = 10-6メートル = 1/1000ミリメートル = 1/25400インチの単位です。 これにより、寸法を1/1000 mm (= 1µm)または1/100インチ(= 254µm)の精度で正確に表すことができます。 小数点以下のインチを2の負のべき乗で表す場合、寸法を1/8インチ(= 3175µm)精度で表すことはできますが、1/16インチ精度で表すことはできません(1/16インチがµmの積分値と一致しないため)。

寸法を共通のµm単位で内部に格納することにより、作成時の単位にかかわらず2つのサイズの属性が比較可能になります。たとえば、両方とも215900µmとして格納されるため、比較の結果8.5インチは215.9 mmと等しいことがわかります。 たとえば、検索サービスは、作成時の単位にかかわらず、直列化表現の同等性に基づいて解像度属性を照合できます。 内部ストレージに整数型を使用することにより、正確な同等性の比較が可能になります。ただし、これは内部表現に浮動小数点が使用される場合は保証されません。 U.S. letterサイズのメディアをメトリック単位で検索する場合は、215.9 x 279.4 mmのメディア・サイズを検索する必要があります。整数216 x 279 mmに丸めると、一致しません。

エクスポートされる定数INCHは、実際にインチ単位の値に乗算して、μm単位の値を取得する変換係数です。 同様に、エクスポートされる定数MMは、mm単位の値に乗算してμm単位の値を取得する変換係数です。 クライアントは、クライアント自身の変換係数を提供して、インチまたはmm以外の単位で解像度属性を指定できます。 ただし、内部単位μmは、外部単位として、インチとmmだけを考慮してサポートするよう選択されているので、クライアントの単位の変換係数が正確な整数型となるかどうか保証されません。 変換係数が正確な整数型ではない場合、クライアントの単位の解像度の値は正確に格納されません。

関連項目:
  • フィールドのサマリー

    フィールド
    修飾子と型
    フィールド
    説明
    static final int
    インチ(in)単位を示す値です。
    static final int
    ミリメートル(mm)単位を示す値です。
  • コンストラクタのサマリー

    コンストラクタ
    修飾子
    コンストラクタ
    説明
    protected
    Size2DSyntax(float x, float y, int units)
    指定された浮動小数点の値で新しい2次元のサイズの属性を構築します。
    protected
    Size2DSyntax(int x, int y, int units)
    指定された整数値で新しい2次元のサイズの属性を構築します。
  • メソッドのサマリー

    修飾子と型
    メソッド
    説明
    boolean
    equals(Object object)
    この2次元のサイズの属性がオブジェクトに渡された属性と等しいかどうかを返します。
    float[]
    getSize(int units)
    浮動小数点の値として指定された単位で、この2次元のサイズの属性の寸法を返します。
    float
    getX(int units)
    指定された単位内のこの2次元サイズ属性のXディメンションを浮動小数点値として返します。
    protected int
    この2次元サイズ属性のXディメンションをマイクロ・メートル(µm)単位で返します。
    float
    getY(int units)
    指定された単位内のこの2次元サイズ属性のYディメンションを浮動小数点値として返します。
    protected int
    この2次元サイズ属性のYディメンションをマイクロ・メートル(µm)単位で返します。
    int
    この2次元のサイズの属性のハッシュ・コード値を返します。
    この2次元のサイズの属性の文字列バージョンを返します。
    toString(int units, String unitsName)
    この2次元のサイズの属性の文字列バージョンを指定された単位で返します。

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

    clone, finalize, getClass, notify, notifyAll, wait, wait, wait
  • フィールド詳細

    • INCH

      public static final int INCH
      インチ(in)単位を示す値です。 これは、実際にインチに乗算してμm (25400)を算出する変換係数です。
      関連項目:
    • MM

      public static final int MM
      ミリメートル(mm)単位を示す値です。 これは、実際にmmに乗算してμm (1000)を算出する変換係数です。
      関連項目:
  • コンストラクタの詳細

    • Size2DSyntax

      protected Size2DSyntax(float x, float y, int units)
      指定された浮動小数点の値で新しい2次元のサイズの属性を構築します。
      パラメータ:
      x - Xディメンション
      y - Yディメンション
      units - 単位変換係数、たとえばINCHまたはMM
      例外:
      IllegalArgumentException - x < 0またはy < 0またはunits < 1
    • Size2DSyntax

      protected Size2DSyntax(int x, int y, int units)
      指定された整数値で新しい2次元のサイズの属性を構築します。
      パラメータ:
      x - Xディメンション
      y - Yディメンション
      units - 単位変換係数、たとえばINCHまたはMM
      例外:
      IllegalArgumentException - x < 0またはy < 0またはunits < 1
  • メソッドの詳細

    • getSize

      public float[] getSize(int units)
      浮動小数点の値として指定された単位で、この2次元のサイズの属性の寸法を返します。
      パラメータ:
      units - 単位変換係数、たとえばINCHまたはMM
      戻り値:
      インデックス0のXディメンションとインデックス1のYディメンションを持つ2要素配列
      例外:
      IllegalArgumentException - units < 1の場合
    • getX

      public float getX(int units)
      指定された単位内のこの2次元サイズ属性のXディメンションを浮動小数点値として返します。
      パラメータ:
      units - 単位変換係数、たとえばINCHまたはMM
      戻り値:
      X ディメンション
      例外:
      IllegalArgumentException - units < 1の場合
    • getY

      public float getY(int units)
      指定された単位内のこの2次元サイズ属性のYディメンションを浮動小数点値として返します。
      パラメータ:
      units - 単位変換係数、たとえばINCHまたはMM
      戻り値:
      Y ディメンション
      例外:
      IllegalArgumentException - units < 1の場合
    • toString

      public String toString(int units, String unitsName)
      この2次元のサイズの属性の文字列バージョンを指定された単位で返します。 文字列の形式は"XxY U"で、XXディメンション、YYディメンション、Uはユニット名です。 値は浮動小数点で表示されます。
      パラメータ:
      units - 単位変換係数、たとえばINCHまたはMM
      unitsName - ユニット名文字列、例えばinまたはmm nullの場合、ユニット名は結果に追加されません
      戻り値:
      この2ディメンションのサイズ属性のStringバージョン
      例外:
      IllegalArgumentException - units < 1の場合
    • equals

      public boolean equals(Object object)
      この2次元のサイズの属性がオブジェクトに渡された属性と等しいかどうかを返します。 次の条件がすべてtrueの場合に同等とみなされます。
      1. objectnullではありません。
      2. objectは、クラスSize2DSyntaxのインスタンスです。
      3. この属性のXディメンションは、objectXディメンションと同じです。
      4. この属性のYディメンションは、objectYディメンションと同じです。
      オーバーライド:
      equals、クラスObject
      パラメータ:
      object - 比較するObject
      戻り値:
      true objectがこの2ディメンション・サイズ属性と等価である場合、false
      関連項目:
    • hashCode

      public int hashCode()
      この2次元のサイズの属性のハッシュ・コード値を返します。
      オーバーライド:
      hashCode、クラスObject
      戻り値:
      このオブジェクトのハッシュ・コード値。
      関連項目:
    • toString

      public String toString()
      この2次元のサイズの属性の文字列バージョンを返します。 文字列の形式は"XxY um"で、XXディメンション、YYディメンションです。 値は内部単位ミクロンで報告されます。
      オーバーライド:
      toString、クラスObject
      戻り値:
      このオブジェクトの文字列表現
    • getXMicrometers

      protected int getXMicrometers()
      この2次元サイズ属性のXディメンションをマイクロ・メートル(µm)単位で返します。 (サブクラスで使用)。
      戻り値:
      X dimension (µm)
    • getYMicrometers

      protected int getYMicrometers()
      この2次元サイズ属性のYディメンションをマイクロ・メートル(µm)単位で返します。 (サブクラスで使用)。
      戻り値:
      Y dimension (µm)