モジュール java.desktop
パッケージ 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. レター・サイズ・メディアを検出する場合、215.9 x 279.4 mmのメディア・サイズを検索しなければならないことに注意してください。整数型216 x 279 mmに四捨五入すると照合されません。

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

    関連項目:
    直列化された形式
    • フィールドのサマリー

      フィールド 
      修飾子と型 フィールド 説明
      static int INCH
      インチ(in)単位を示す値です。
      static int MM
      ミリメートル(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 getXMicrometers​()
      この2次元のサイズの属性の寸法Xをミクロン(μm)単位で返します。
      float getY​(int units)
      浮動小数点の値として指定された単位で、この2次元のサイズの属性の寸法Yを返します。
      protected int getYMicrometers​()
      この2次元のサイズの属性の寸法Yをミクロン(μm)単位で返します。
      int hashCode​()
      この2次元のサイズの属性のハッシュ・コード値を返します。
      String toString​()
      この2次元のサイズの属性の文字列バージョンを返します。
      String toString​(int units, String unitsName)
      この2次元のサイズの属性の文字列バージョンを指定された単位で返します。
    • フィールドの詳細

      • 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 - 単位変換係数。INCHMMなど。
        例外:
        IllegalArgumentException - 非チェック例外。x < 0またはy < 0またはunits < 1の場合にスローされる。
      • Size2DSyntax

        protected Size2DSyntax​(int x,
                               int y,
                               int units)
        指定された整数値で新しい2次元のサイズの属性を構築します。
        パラメータ:
        x - 寸法X。
        y - 寸法Y。
        units - 単位変換係数。INCHMMなど。
        例外:
        IllegalArgumentException - 非チェック例外。x < 0またはy < 0またはunits < 1の場合にスローされる。
    • メソッドの詳細

      • getSize

        public float[] getSize​(int units)
        浮動小数点の値として指定された単位で、この2次元のサイズの属性の寸法を返します。
        パラメータ:
        units - 単位変換係数。INCHMMなど。
        戻り値:
        インデックス0の寸法Xおよびインデックス1の寸法Yを持つ2要素の配列
        例外:
        IllegalArgumentException - 非チェック例外。units < 1の場合にスローされる。
      • getX

        public float getX​(int units)
        浮動小数点の値として指定された単位で、この2次元のサイズの属性の寸法Xを返します。
        パラメータ:
        units - 単位変換係数。INCHMMなど。
        戻り値:
        寸法X
        例外:
        IllegalArgumentException - 非チェック例外。units < 1の場合にスローされる。
      • getY

        public float getY​(int units)
        浮動小数点の値として指定された単位で、この2次元のサイズの属性の寸法Yを返します。
        パラメータ:
        units - 単位変換係数。INCHMMなど。
        戻り値:
        寸法Y
        例外:
        IllegalArgumentException - 非チェック例外。units < 1の場合にスローされる。
      • toString

        public String toString​(int units,
                               String unitsName)
        この2次元のサイズの属性の文字列バージョンを指定された単位で返します。 文字列は"XxY U"の形式をとります。ここで、Xは寸法X、Yは寸法Y、Uは単位名です。 値は浮動小数点で表示されます。
        パラメータ:
        units - 単位変換係数。INCHMMなど。
        unitsName - 単位名の文字列。inまたはmmなど。 nullの場合、結果に単位名は付けられない。
        戻り値:
        この2次元のサイズの属性の文字列バージョン
        例外:
        IllegalArgumentException - 非チェック例外。units < 1の場合にスローされる。
      • equals

        public boolean equals​(Object object)
        この2次元のサイズの属性がオブジェクトに渡された属性と等しいかどうかを返します。 次の条件がすべてtrueの場合に同等とみなされます。
        1. objectがnullではない。
        2. objectがSize2DSyntaxのインスタンスである。
        3. この属性の寸法Xがobjectの寸法Xと等しい。
        4. この属性の寸法Yがobjectの寸法Yと等しい。
        オーバーライド:
        equals、クラス: Object
        パラメータ:
        object - 比較対象のオブジェクト。
        戻り値:
        objectがこの2次元のサイズの属性と等しい場合はtrue、そうでない場合はfalse。
        関連項目:
        Object.hashCode(), HashMap
      • toString

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

        protected int getXMicrometers​()
        この2次元のサイズの属性の寸法Xをミクロン(μm)単位で返します。 (サブクラスで使用)。
        戻り値:
        寸法X (μm)。
      • getYMicrometers

        protected int getYMicrometers​()
        この2次元のサイズの属性の寸法Yをミクロン(μm)単位で返します。 (サブクラスで使用)。
        戻り値:
        寸法Y (μm)。