JavaTM 2 Platform
Standard Ed. 5.0

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 属性。
 
方法摘要
 boolean equals(FontRenderContext rhs)
          如果 rhs 具有与此 FontRenderContext 相同的转换、antialiasing 和 fractional metrics 值,则返回 true。
 boolean equals(Object obj)
          如果 obj 是 FontRenderContext 的一个实例,并且具有与此 FontRenderContext 相同的转换、antialiasing 和 fractional metrics 值,则返回 true。
 AffineTransform getTransform()
          获取用于在此 FontRenderContext 中将印刷点缩放为像素的转换。
 int hashCode()
          返回此 FontRenderContext 的哈希码。
 boolean isAntiAliased()
          获取此 FontRenderContext 中使用的文本 anti-aliasing 模式。
 boolean usesFractionalMetrics()
          获取应用程序请求在此 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 属性。

参数:
tx - 用于在此 FontRenderContext 中将印刷点缩放为像素的转换。如果 tx 为 null,则使用恒等转换。
isAntiAliased - 确定新构造的对象是否有 anti-aliasing 属性
usesFractionalMetrics - 确定新构造的对象是否使用 fractional metrics
方法详细信息

getTransform

public AffineTransform getTransform()
获取用于在此 FontRenderContext 中将印刷点缩放为像素的转换。

返回:
FontRenderContextAffineTransform
另请参见:
AffineTransform

isAntiAliased

public boolean isAntiAliased()
获取此 FontRenderContext 中使用的文本 anti-aliasing 模式。

返回:
如果此 FontRenderContext 中的文本是 anti-aliased,则返回 true;否则返回 false
另请参见:
RenderingHints.KEY_TEXT_ANTIALIASING

usesFractionalMetrics

public boolean usesFractionalMetrics()
获取应用程序请求在此 FontRenderContext 中使用的文本 fractional metrics 模式。

返回:
如果在此 FontRenderContext 中的布局应使用 fractional metrics 来执行,则返回 true;否则返回 false
另请参见:
RenderingHints.KEY_FRACTIONALMETRICS

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

hashCode

public int hashCode()
返回此 FontRenderContext 的哈希码。

覆盖:
Object 中的 hashCode
返回:
此对象的一个哈希码值。
另请参见:
Object.equals(java.lang.Object), Hashtable

JavaTM 2 Platform
Standard Ed. 5.0

提交错误或意见
有关更多的 API 参考资料和开发人员文档,请参阅 Java 2 SDK SE 开发人员文档。该文档包含更详细的、面向开发人员的描述,以及总体概述、术语定义、使用技巧和工作代码示例。

版权所有 2004 Sun Microsystems, Inc. 保留所有权利。 请遵守许可证条款。另请参阅文档重新分发政策