モジュール 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. letterサイズのメディアをメトリック単位で検索する場合は、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 - 単位変換係数、たとえば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ディメンションは、object Xディメンションに等しい。
        4. この属性Yディメンションは、object Yディメンションに等しい。
        オーバーライド:
        equals 、クラス:  Object
        パラメータ:
        object - 比較するObject
        戻り値:
        true objectがこの2ディメンション・サイズ属性と等価である場合、false
        関連項目:
        Object.hashCode()HashMap
      • 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)