- java.lang.Object
-
- javax.print.attribute.Size2DSyntax
-
- 实现的所有接口
-
Serializable
,Cloneable
- 已知直接子类:
-
MediaSize
public abstract class Size2DSyntaxextends Objectimplements Serializable, Cloneable
类Size2DSyntax
是一个抽象基类,提供表示二维大小的所有属性的通用实现。二维大小属性的值由两个项组成,即
X
维和Y
维。 可以通过提供两个值并指示测量值的单位来构造二维尺寸属性。 提供了返回二维大小属性值的方法,指示要返回值的单位。 两个最常见的尺寸单位是英寸(英寸)和毫米(mm),并且提供导出的常数INCH
和MM
用于指示那些单位。构造后,二维大小属性的值是不可变的。
设计
二维尺寸属性的
X
和Y
尺寸值在内部存储为整数,单位为微米(μm),其中1微米= 10 -6米= 1/1000毫米= 1/25400英寸。 这允许尺寸精确表示精度为1/1000 mm(=1μm)或1/100英寸(=254μm)。 如果分数英寸以2的负幂表示,则允许尺寸精确表示精度为1/8英寸(= 3175微米)但不是1/16英寸(因为1/16英寸不等于整数Âμm)。在内部以Âμm为单位存储尺寸可以比较两个尺寸属性,而不考虑它们的创建单位; 例如,8.5英寸将比较等于215.9毫米,因为它们都存储为215900微米。 例如,查找服务可以基于其序列化表示的相等性来匹配解析属性,而不管它们的创建单位。 使用整数进行内部存储允许进行精确的相等比较,如果使用内部浮点表示则无法保证。 请注意,如果您要以公制单位查找
U.S. letter
大小的介质,则必须搜索215.9 x 279.4 mm的介质尺寸; 四舍五入到216 x 279毫米的积分将不匹配。导出的常量
INCH
实际上是转换因子,通过该转换因子乘以以英寸为单位的值以获得Âμm的值。 同样,导出常量MM
是转换因子,通过该转换因子乘以mm的值以获得Âμm的值。 客户可以通过提供自己的转换因子,以英寸或毫米以外的单位指定分辨率值。 但是,由于选择Âμm的内部单位时只考虑英制和mm的外部单位,因此无法保证客户单位的转换因子是精确整数。 如果转换因子不是精确整数,则客户端单元中的分辨率值将不会精确存储。- 另请参见:
- Serialized Form
-
-
构造方法摘要
构造方法 变量 构造器 描述 protected
Size2DSyntax(float x, float y, int units)
根据给定的浮点值构造新的二维大小属性。protected
Size2DSyntax(int x, int y, int units)
根据给定的整数值构造新的二维大小属性。
-
方法摘要
所有方法 实例方法 具体的方法 变量和类型 方法 描述 boolean
equals(Object object)
返回此二维大小属性是否等效于传入的对象。float[]
getSize(int units)
以给定单位获取此二维大小属性的维度作为浮点值。float
getX(int units)
以给定单位返回此二维大小属性的X
维度作为浮点值。protected int
getXMicrometers()
以微米(μm)为单位返回此二维大小属性的X
维度。float
getY(int units)
以给定单位返回此二维大小属性的Y
维度作为浮点值。protected int
getYMicrometers()
以微米(μm)为单位返回此二维大小属性的Y
维度。int
hashCode()
返回此二维大小属性的哈希码值。String
toString()
返回此二维大小属性的字符串版本。String
toString(int units, String unitsName)
以给定单位返回此二维大小属性的字符串版本。
-
-
-
构造方法详细信息
-
Size2DSyntax
protected Size2DSyntax(float x, float y, int units)
根据给定的浮点值构造新的二维大小属性。- 参数
-
x
-X
尺寸 -
y
-Y
维度 -
units
- 单位转换因子,例如INCH
或MM
- 异常
-
IllegalArgumentException
- 如果x < 0
或y < 0
或units < 1
-
Size2DSyntax
protected Size2DSyntax(int x, int y, int units)
根据给定的整数值构造新的二维大小属性。- 参数
-
x
-X
尺寸 -
y
-Y
维 -
units
- 单位转换因子,例如INCH
或MM
- 异常
-
IllegalArgumentException
- 如果x < 0
或y < 0
或units < 1
-
-
方法详细信息
-
getSize
public float[] getSize(int units)
以给定单位获取此二维大小属性的维度作为浮点值。- 参数
-
units
- 单位换算系数,例如INCH
或MM
- 结果
- 与一个二单元阵列
X
尺寸在索引0和Y
索引1维 - 异常
-
IllegalArgumentException
- 如果units < 1
-
getX
public float getX(int units)
以给定单位返回此二维大小属性的X
维度作为浮点值。- 参数
-
units
- 单位转换因子,例如INCH
或MM
- 结果
-
X
维度 - 异常
-
IllegalArgumentException
- 如果units < 1
-
getY
public float getY(int units)
以给定单位返回此二维大小属性的Y
维度作为浮点值。- 参数
-
units
- 单位换算系数,例如INCH
或MM
- 结果
-
Y
维度 - 异常
-
IllegalArgumentException
- 如果units < 1
-
toString
public String toString(int units, String unitsName)
以给定单位返回此二维大小属性的字符串版本。 该字符串采用"XxY U"
,其中X是X
维度, Y是Y
维度, U是单位名称。 值以浮点显示。- 参数
-
units
- 单位转换因子,例如INCH
或MM
-
unitsName
- 单位名称字符串,例如in
或mm
。 如果是null
,则不会在结果中附加单位名称 - 结果
-
String
这个二维大小属性的版本 - 异常
-
IllegalArgumentException
- 如果units < 1
-
equals
public boolean equals(Object object)
返回此二维大小属性是否等效于传入的对象。 为了等效,所有以下条件必须为真:-
object
不是null
。 -
object
是类Size2DSyntax
的实例 - 此属性的
X
尺寸等于object
的X
尺寸。 - 此属性的
Y
尺寸等于object
的Y
尺寸。
- 重写:
-
equals
在类Object
- 参数
-
object
-Object
来比较 - 结果
-
true
如果object
等效于此二维大小属性,false
- 另请参见:
-
Object.hashCode()
,HashMap
-
-
hashCode
public int hashCode()
返回此二维大小属性的哈希码值。- 重写:
-
hashCode
类Object
- 结果
- 此对象的哈希码值。
- 另请参见:
-
Object.equals(java.lang.Object)
,System.identityHashCode(java.lang.Object)
-
toString
public String toString()
返回此二维大小属性的字符串版本。 该字符串采用"XxY um"
,其中X是X
维度, Y是Y
维度。 这些值以微米的内部单位报告。
-
getXMicrometers
protected int getXMicrometers()
以微米(μm)为单位返回此二维尺寸属性的X
尺寸。 (用于子类。)- 结果
-
X
尺寸(X
)
-
getYMicrometers
protected int getYMicrometers()
以微米(μm)为单位返回此二维大小属性的Y
维度。 (用于子类。)- 结果
-
Y
尺寸(Y
)
-
-