モジュール 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だけを考慮してサポートするよう選択されているので、クライアントの単位の変換係数が正確な整数型となるかどうか保証されません。 変換係数が正確な整数型ではない場合、クライアントの単位の解像度の値は正確に格納されません。

関連項目: