JavaTM 2 Platform
Standard Ed. 6

java.awt.font
類別 FontRenderContext

java.lang.Object
  繼承者 java.awt.font.FontRenderContext

public class FontRenderContext
extends Object

FontRenderContext 類別是正確測量文本所需的資訊容器。因為將輪廓映射到像素的規則不同,而且應用程序提供的呈現提示不同,所以文本的測量也有所不同。

其中一條資訊是將印刷點縮放成像素的轉換資訊。(一個點被定義成恰好是一英吋的 1/72,這與點的傳統機械測量稍有不同。)由於捨入到像素邊界和字體設計者已指定的提示等因素,在 600dpi 設備上以 12pt 呈現的字元可能與在 72dpi 設備上以 12pt 呈現的同一個字元大小不同。

應用程序指定的 Anti-aliasing 和 Fractional-metrics 也可能因為捨入到像素邊界而影響字元的大小。

通常,從 Graphics2D 物件獲取 FontRenderContext 實例。直接建構的 FontRenderContext 很可能不表示任何實際的圖形設備,並可能導致不可預料的或不正確的結果。

另請參見:
RenderingHints.KEY_TEXT_ANTIALIASING, RenderingHints.KEY_FRACTIONALMETRICS, Graphics2D.getFontRenderContext(), LineMetrics

建構子摘要
protected FontRenderContext()
          建構一個新 FontRenderContext 物件。
  FontRenderContext(AffineTransform tx, boolean isAntiAliased, boolean usesFractionalMetrics)
          根據可選的 AffineTransform 和兩個 boolean 值建構一個 FontRenderContext 物件,這兩個 boolean 值確定新建構的物件是否具有 anti-aliasing 或 fractional metrics 屬性。
  FontRenderContext(AffineTransform tx, Object aaHint, Object fmHint)
          根據一個可選 AffineTransform 和兩個 Object 值建構一個 FontRenderContext 物件,這兩個值決定了新創建的物件是具有 anti-aliasing 屬性,還是具有 fractional metrics 屬性。
 
方法摘要
 boolean equals(FontRenderContext rhs)
          如果 rhs 具有與此 FontRenderContext 相同的轉換、antialiasing 和 fractional metrics 值,則返回 true。
 boolean equals(Object obj)
          如果 obj 是 FontRenderContext 的一個實例,並且具有與此 FontRenderContext 相同的轉換、antialiasing 和 fractional metrics 值,則返回 true。
 Object getAntiAliasingHint()
          返回此 FontRenderContext 中使用的文本 anti-aliasing 呈現網要提示。
 Object getFractionalMetricsHint()
          返回此 FontRenderContext 中使用的文本 fractional metrics 呈現網要提示。
 AffineTransform getTransform()
          獲取用於在此 FontRenderContext 中將印刷點縮放為像素的轉換。
 int getTransformType()
          返回此 FontRenderContext 的仿射轉換的整數型別,該型別由 AffineTransform.getType() 指定。
 int hashCode()
          返回此 FontRenderContext 的雜湊碼。
 boolean isAntiAliased()
          返回一個 boolean 值,指示是否某些形式的抗鋸齒由此 FontRenderContext 指定。
 boolean isTransformed()
          指示此 FontRenderContext 物件是否需要考慮已轉換的呈現上下文中的文本。
 boolean usesFractionalMetrics()
          返回一個 boolean 值,指示是否在此 FontRenderContext 中使用文本 fractional metrics 網要。
 
從類別 java.lang.Object 繼承的方法
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 

建構子詳細資訊

FontRenderContext

protected FontRenderContext()
建構一個新 FontRenderContext 物件。


FontRenderContext

public FontRenderContext(AffineTransform tx,
                         boolean isAntiAliased,
                         boolean usesFractionalMetrics)
根據可選的 AffineTransform 和兩個 boolean 值建構一個 FontRenderContext 物件,這兩個 boolean 值確定新建構的物件是否具有 anti-aliasing 或 fractional metrics 屬性。在任何情況下,boolean 值 truefalse 分別對應於呈現提示值 ONOFF

要指定其他提示值,請使用將呈現提示值指定為參數的建構子: FontRenderContext(AffineTransform, Object, Object)

參數:
tx - 用於在此 FontRenderContext 中將印刷點縮放為像素的轉換。如果該參數為 null,則使用恆等轉換。
isAntiAliased - 確定新建構的物件是否具有 anti-aliasing 屬性。
usesFractionalMetrics - 確定新建構的物件是否具有 fractional metrics 屬性。

FontRenderContext

public FontRenderContext(AffineTransform tx,
                         Object aaHint,
                         Object fmHint)
根據一個可選 AffineTransform 和兩個 Object 值建構一個 FontRenderContext 物件,這兩個值決定了新創建的物件是具有 anti-aliasing 屬性,還是具有 fractional metrics 屬性。

參數:
tx - 用於在此 FontRenderContext 中將印刷點縮放為像素的轉換。如果該參數為 null,則使用恆等轉換。
aaHint - - java.awt.RenderingHints 中定義的文本抗鋸齒呈現提示值之一。其他任何值都將拋出 IllegalArgumentException。可以指定 VALUE_TEXT_ANTIALIAS_DEFAULT,在這種情況下,使用的網要與實作有關。
fmHint - - java.awt.RenderingHints 中定義的文本碎片 (text fractional) 呈現提示值之一。可以指定 VALUE_FRACTIONALMETRICS_DEFAULT,在這種情況下,使用的預設與實作有關。其他任何值都將拋出 IllegalArgumentException
拋出:
IllegalArgumentException - 如果提示不是一個合法值。
從以下版本開始:
1.6
方法詳細資訊

isTransformed

public boolean isTransformed()
指示此 FontRenderContext 物件是否需要考慮已轉換的呈現上下文中的文本。

返回:
如果此 FontRenderContext 物件具有非等同 AffineTransform 屬性,則返回 true。否則返回 false
從以下版本開始:
1.6
另請參見:
getTransform()

getTransformType

public int getTransformType()
返回此 FontRenderContext 的仿射轉換的整數型別,該型別由 AffineTransform.getType() 指定。

返回:
轉換的型別。
從以下版本開始:
1.6
另請參見:
AffineTransform

getTransform

public AffineTransform getTransform()
獲取用於在此 FontRenderContext 中將印刷點縮放為像素的轉換。

返回:
FontRenderContextAffineTransform
另請參見:
AffineTransform

isAntiAliased

public boolean isAntiAliased()
返回一個 boolean 值,指示是否某些形式的抗鋸齒由此 FontRenderContext 指定。對於特定呈現提示值,可以調用 getAntiAliasingHint()

返回:
如果此 FontRenderContext 中的文本是抗鋸齒的,則返回 true;否則返回 false
另請參見:
RenderingHints.KEY_TEXT_ANTIALIASING, FontRenderContext(AffineTransform,boolean,boolean), FontRenderContext(AffineTransform,Object,Object)

usesFractionalMetrics

public boolean usesFractionalMetrics()
返回一個 boolean 值,指示是否在此 FontRenderContext 中使用文本 fractional metrics 網要。可以調用 getFractionalMetricsHint() 來獲得對應的呈現提示值。

返回:
如果在此 FontRenderContext 中的佈局應使用 fractional metrics 來執行,則返回 true;否則返回 false
另請參見:
RenderingHints.KEY_FRACTIONALMETRICS, FontRenderContext(AffineTransform,boolean,boolean), FontRenderContext(AffineTransform,Object,Object)

getAntiAliasingHint

public Object getAntiAliasingHint()
返回此 FontRenderContext 中使用的文本 anti-aliasing 呈現網要提示。該值將是 java.awt.RenderingHints 中定義的文本抗鋸齒呈現提示值之一。

返回:
FontRenderContext 中使用的文本 anti-aliasing 呈現網要提示。
從以下版本開始:
1.6

getFractionalMetricsHint

public Object getFractionalMetricsHint()
返回此 FontRenderContext 中使用的文本 fractional metrics 呈現網要提示。該值將是 java.awt.RenderingHints 中定義的文本 fractional metrics 呈現提示值之一。

返回:
FontRenderContext 中使用的文本 fractional metrics 呈現網要提示。
從以下版本開始:
1.6

equals

public boolean equals(Object obj)
如果 obj 是 FontRenderContext 的一個實例,並且具有與此 FontRenderContext 相同的轉換、antialiasing 和 fractional metrics 值,則返回 true。

覆寫:
類別 Object 中的 equals
參數:
obj - 要測試其相等性的物件
返回:
如果指定的物件與此 FontRenderContext 相等,則返回 true;否則返回 false
另請參見:
Object.hashCode(), Hashtable

equals

public boolean equals(FontRenderContext rhs)
如果 rhs 具有與此 FontRenderContext 相同的轉換、antialiasing 和 fractional metrics 值,則返回 true。

參數:
rhs - 要測試其相等性的 FontRenderContext
返回:
如果 rhs 與此 FontRenderContext 相等,則返回 true;否則返回 false
從以下版本開始:
1.4

hashCode

public int hashCode()
返回此 FontRenderContext 的雜湊碼。

覆寫:
類別 Object 中的 hashCode
返回:
此物件的一個雜湊碼值。
另請參見:
Object.equals(java.lang.Object), Hashtable

JavaTM 2 Platform
Standard Ed. 6

提交錯誤或意見

版權所有 2008 Sun Microsystems, Inc. 保留所有權利。請遵守GNU General Public License, version 2 only