|
JavaTM 2 Platform Standard Ed. 6 |
|||||||||
上一個類別 下一個類別 | 框架 無框架 | |||||||||
摘要: 巢狀 | 欄位 | 建構子 | 方法 | 詳細資訊: 欄位 | 建構子 | 方法 |
java.lang.Object javax.print.attribute.Size2DSyntax
public abstract class Size2DSyntax
類別 Size2DSyntax 是一種抽象的基礎類別,它提供表示二維大小的所有屬性的公共實作。
二維大小屬性的值由兩項組成:X 維度和 Y 維度。通過提供兩個值和指示測量該值的單位可以建構一個二維大小的屬性。提供一些方法以返回二維大小屬性的值,並指示將返回值的單位。兩個最常見的大小單位是英吋 (in) 和毫米 (mm),為指示這些單位,提供了導出的常數
和 INCH
。
MM
一旦建構之後,二維大小屬性的值就是不可變的。
設計
將二維大小屬性的 X 和 Y 維度值在內部存儲為整數,單位是微米 (µm),其中 1 微米 = 10-6 米 = 1/1000 毫米 = 1/25400 英吋。這使要表示的維度精確到 1/1000 毫米 (= 1 µm) 或 1/100 英吋 (= 254 µm)。如果用 2 的負次方表示小數英吋,這使表示的維度精確到 1/8 英吋 (= 3175 µm),而不是 1/16 英吋(因為 1/16 英吋不等於一個整數微米)。
以通用單位微米的形式內部存儲該維度可以比較這兩種大小的屬性,無需考慮創建它們的單位;例如,8.5 英吋將相當於 215.9 毫米,因為他們都存儲為 215900 微米。例如,查詢服務可以基於其序列化表示形式的相等性來比對分辨率屬性,無論它們用哪種單位創建。對內部存儲使用整數可以允許執行精確的相等性比較,如果使用內部浮點表示形式,則不保證這一點。注意,如果尋找公制單位的美國信函大小介質,您必須搜尋大小為 215.9 x 279.4 毫米的介質;捨入為整數 216 x 279 毫米將不比對。
導出的常數
實際上是轉換因子,將一個以英吋 為單位的值乘以該轉換因子可以獲得以微米為單位的值。同樣,導出的常數 INCH
實際上也是轉換因子,將一個以毫米為單位的值乘以該轉換因子可以獲得以微米為單位的值。客戶機可以通過提供其自已的轉換因子來指定使用某些單位(英吋或毫米除外)的分辨率值。但是,由於選擇內部單位微米時只考慮支持外部單位英吋和毫米,所以不能保證針對客戶機單位的轉換因子是一個準確的整數。如果轉換因子不是一個準確的整數,則使用客戶機單位的分辨率值不能精確地存儲。
MM
欄位摘要 | |
---|---|
static int |
INCH
指示單位為英吋 (in) 的值。 |
static int |
MM
指示單位為毫米 (mm) 的值。 |
建構子摘要 | |
---|---|
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()
返回此二維大小屬性的 X 維度(以微米為單位)。 |
float |
getY(int units)
返回給定單位的此二維大小屬性的 Y 維度作為浮點值。 |
protected int |
getYMicrometers()
返回此二維大小屬性的 Y 維度(以微米為單位)。 |
int |
hashCode()
返回此二維大小屬性的雜湊碼值。 |
String |
toString()
返回此二維大小屬性的字元串版本。 |
String |
toString(int units,
String unitsName)
返回給定單位的此二維大小屬性的字元串版本。 |
從類別 java.lang.Object 繼承的方法 |
---|
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
欄位詳細資訊 |
---|
public static final int INCH
public static final int MM
建構子詳細資訊 |
---|
protected Size2DSyntax(float x, float y, int units)
x
- X 維度。y
- Y 維度。units
- 單位轉換因子,即 INCH
或 MM
。
IllegalArgumentException
- (未經檢查的異常)如果 x
< 0 或 y
< 0 或 units
< 1。protected Size2DSyntax(int x, int y, int units)
x
- X 維度。y
- Y 維度。units
- 單位轉換因子,即 INCH
或 MM
。
IllegalArgumentException
- (未經檢查的異常)如果 x
< 0 或 y
< 0 或 units
< 1。方法詳細資訊 |
---|
public float[] getSize(int units)
units
- 單位轉換因子,即 INCH
或 MM
。
IllegalArgumentException
- (未經檢查的異常)如果 units
< 1,則拋出該異常。public float getX(int units)
units
- 單位轉換因子,即 INCH
或 MM
。
IllegalArgumentException
- (未經檢查的異常)如果 units
< 1,則拋出該異常。public float getY(int units)
units
- 單位轉換因子,即 INCH
或 MM
。
IllegalArgumentException
- (未經檢查的異常)如果 units
< 1,則拋出該異常。public String toString(int units, String unitsName)
"XxY U"
,其中 X 為 X 維度,Y 為 Y 維度,U 為單位名稱。以浮點形式顯示該值。
units
- 單位轉換因子,即 INCH
或 MM
。unitsName
- 單位名稱字元串,即 "in"
或 "mm"
。如果為 null,則沒有任何單位名稱附加到該結果。
IllegalArgumentException
- (未經檢查的異常)如果 units
< 1,則拋出該異常。public boolean equals(Object object)
object
不為 null。
object
是類別 Size2DSyntax 的一個實例。
object
的 X 維度。
object
的 Y 維度。
Object
中的 equals
object
- 要比較的物件。
object
等效於此二維大小屬性,則返回 True,否則返回 false。Object.hashCode()
,
Hashtable
public int hashCode()
Object
中的 hashCode
Object.equals(java.lang.Object)
,
Hashtable
public String toString()
"XxY um"
,其中 X 為 X 維度,Y 為 Y 維度。使用內部單位微米報告該值。
Object
中的 toString
protected int getXMicrometers()
protected int getYMicrometers()
|
JavaTM 2 Platform Standard Ed. 6 |
|||||||||
上一個類別 下一個類別 | 框架 無框架 | |||||||||
摘要: 巢狀 | 欄位 | 建構子 | 方法 | 詳細資訊: 欄位 | 建構子 | 方法 |
版權所有 2008 Sun Microsystems, Inc. 保留所有權利。請遵守GNU General Public License, version 2 only。