|
JavaTM 2 Platform Standard Ed. 6 |
|||||||||
上一個類別 下一個類別 | 框架 無框架 | |||||||||
摘要: 巢狀 | 欄位 | 建構子 | 方法 | 詳細資訊: 欄位 | 建構子 | 方法 |
java.lang.Object javax.print.attribute.ResolutionSyntax
public abstract class ResolutionSyntax
類別 ResolutionSyntax 是一種抽象的基礎類別,它提供表示印表機分辨率的所有屬性的公共實作。
分辨率屬性的值由兩項組成,即反向進紙分辨率和進紙分辨率。通過提供兩個值和指示測量該值的單位可以建構分辨率屬性。提供一些方法以返回分辨率屬性的值,並指示將要返回的值的單位。兩個最常見分辨率單位是每英吋點數 (dpi) 和每厘米點數 (dpcm),為指示這些單位,提供了導出的常數
和 DPI
。
DPCM
一旦建構之後,分辨率屬性的值就是不可變的。
設計
分辨率屬性的反向進紙分辨率和進紙分辨率值是使用每 100 英吋的點數為單位 (dphi) 進行內部存儲的。使用 dphi(比方說,而不是公制單位)存儲該值允許在 dpi 和 dphi 之間以及 dpcm 和 dphi 之間進行精確的整數演算法轉換:1 dpi = 100 dphi,1 dpcm = 254 dphi。因此,可以使用任一單位將該值存儲到分辨率屬性,並從其獲取,精度上沒有任何損失。如果使用浮點表示形式,則不能保證這一點。但是,如果使用一個單位創建分辨率屬性的值,使用其他單位進行獲取,則通常會發生捨入誤差;例如,600 dpi 將被捨入為 236 dpcm,而實際值(五位數)為 236.22 dpcm。
使用通用單位 dphi 內部存儲該值可以比較這兩種分辨率屬性,無需考慮創建值的單位;例如,300 dpcm 將相當於 762 dpi,因為它們都存儲為 76200 dphi。尤其是,查詢服務可以基於它們序列化表示形式的相等性來比對分辨率屬性,而不管它們用哪種單位創建。另外,對內部存儲使用整數可以允許執行精確的相等性比較,如果使用浮點表示形式,則不保證這一點。
導出的常數
實際上是轉換因子,將一個以 dpi 為單位的值乘以轉換因子可以獲得以 dphi 為單位的值。同樣,導出的常數 DPI
實際上是轉換因子,將一個以 dpcm 為單位的值乘以轉換因子可以獲得以 dphi 為單位的值。客戶機可以通過提供其自已的轉換因子指定使用某些單位( dpi 或 dpcm 除外)的分辨率值。但是,由於只注意支持外部單位 dpi 和 dpcm 而選擇了內部單位 dphi,所以不能保證對客戶機單位的轉換因子將是一個準確的整數。如果轉換因子不是一個準確的整數,則使用客戶機單位的分辨率值不能精確地存儲。
DPCM
欄位摘要 | |
---|---|
static int |
DPCM
指示每厘米點數為單位 (dpcm) 的值。 |
static int |
DPI
指示每英吋點數為單位 (dpi) 的值。 |
建構子摘要 | |
---|---|
ResolutionSyntax(int crossFeedResolution,
int feedResolution,
int units)
根據給定項建構一個新的分辨率屬性。 |
方法摘要 | |
---|---|
boolean |
equals(Object object)
返回此分辨率屬性是否等效於傳入的物件。 |
int |
getCrossFeedResolution(int units)
返回給定單位的此分辨率屬性的反向進紙分辨率。 |
protected int |
getCrossFeedResolutionDphi()
返回以 dphi 為單位的此分辨率屬性的反向進紙分辨率。 |
int |
getFeedResolution(int units)
返回給定單位的此分辨率屬性的進紙分辨率。 |
protected int |
getFeedResolutionDphi()
返回以 dphi 為單位的此分辨率屬性的進紙分辨率。 |
int[] |
getResolution(int units)
獲取給定單位的此分辨率屬性的分辨率值。 |
int |
hashCode()
返回此分辨率屬性的雜湊碼值。 |
boolean |
lessThanOrEquals(ResolutionSyntax other)
確定此分辨率屬性的值是否小於或等於給定分辨率屬性的值。 |
String |
toString()
返回此分辨率屬性的字元串版本。 |
String |
toString(int units,
String unitsName)
返回給定單位的此分辨率屬性的字元串版本。 |
從類別 java.lang.Object 繼承的方法 |
---|
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
欄位詳細資訊 |
---|
public static final int DPI
public static final int DPCM
建構子詳細資訊 |
---|
public ResolutionSyntax(int crossFeedResolution, int feedResolution, int units)
crossFeedResolution
- 反向進紙分辨率。feedResolution
- 進紙分辨率。units
- 單位轉換因子,即 DPI
或 DPCM
。
IllegalArgumentException
- (未經檢查的異常)如果 crossFeedResolution
< 1 或 feedResolution
< 1 或 units
< 1,則拋出該異常。方法詳細資訊 |
---|
public int[] getResolution(int units)
units
- 單位轉換因子,即 DPI
或 DPCM
。
IllegalArgumentException
- (未經檢查的異常)如果 units
< 1,則拋出該異常。public int getCrossFeedResolution(int units)
units
- 單位轉換因子,即 DPI
或 DPCM
。
IllegalArgumentException
- (未經檢查的異常)如果 units
< 1,則拋出該異常。public int getFeedResolution(int units)
units
- 單位轉換因子,即 DPI
或 DPCM
。
IllegalArgumentException
- (未經檢查的異常)如果 units
< 1,則拋出該異常。public String toString(int units, String unitsName)
"CxF U"
,其中 C 為反向進紙分辨率,F 為進紙分辨率,U 為單位名稱。將該值捨入為最接近的整數。
units
- 單位轉換因子,即 DPI
或 DPCM
。unitsName
- 單位名稱字元串,即 "dpi"
或 "dpcm"
。如果為 null,則沒有任何單位名稱附加到該結果。
IllegalArgumentException
- (未經檢查的異常)如果 units
< 1,則拋出該異常。public boolean lessThanOrEquals(ResolutionSyntax other)
other
屬性的反向進紙分辨率。
other
屬性的進紙分辨率。
other
- 與之比較的分辨率屬性。
other
分辨率屬性,則返回 True,否則返回 false。
NullPointerException
- (未經檢查的異常)如果 other
為 null,則拋出該異常。public boolean equals(Object object)
object
不為 null。
object
是類別 ResolutionSyntax 的一個實例。
object
的反向進紙分辨率。
object
的進紙分辨率。
Object
中的 equals
object
- 要比較的物件。
object
等效於此分辨率屬性,則返回 True,否則返回 false。Object.hashCode()
,
Hashtable
public int hashCode()
Object
中的 hashCode
Object.equals(java.lang.Object)
,
Hashtable
public String toString()
"CxF dphi"
,其中 C 為反向進紙分辨率,F 為進紙分辨率。使用內部單位 dphi 報告該值。
Object
中的 toString
protected int getCrossFeedResolutionDphi()
protected int getFeedResolutionDphi()
|
JavaTM 2 Platform Standard Ed. 6 |
|||||||||
上一個類別 下一個類別 | 框架 無框架 | |||||||||
摘要: 巢狀 | 欄位 | 建構子 | 方法 | 詳細資訊: 欄位 | 建構子 | 方法 |
版權所有 2008 Sun Microsystems, Inc. 保留所有權利。請遵守GNU General Public License, version 2 only。