这些Java教程是为JDK 8编写的。本页面中描述的示例和实践不利用后续版本引入的改进,并可能使用不再可用的技术。
有关Java SE 9及以后版本中更新的语言特性的摘要,请参阅Java语言变更。
有关所有JDK版本的新功能、增强功能以及已删除或已弃用选项的信息,请参阅JDK发行说明。
本节介绍了 Font
类,它支持详细字体信息的规定和复杂排版特性的使用。
Font
对象表示系统中可用的字体集合中的一个字体。常见的字体包括 Helvetica Bold 和 Courier Bold Italic。一个 Font
对象有三个名称:逻辑名称、族名称和字体名称:
Font
对象的逻辑名称是映射到物理字体的名称,物理字体是系统上的具体字体之一。在 Java 中指定字体时,请使用字体名称而不是逻辑名称。您可以通过调用 Font
的 getName
方法获取逻辑名称。要获取映射到系统上具体字体的逻辑名称列表,请调用 java.awt.GraphicsEnvironment.getAvailableFontFamilyNames 方法。
有关详细信息,请参阅 物理字体和逻辑字体。
Font
对象的族名称是确定多个字体外观设计的字体族的名称,例如 Helvetica。通过 getFamily
方法检索族名称。
Font
对象的字体名称指的是实际安装在系统上的字体。这是您在指定字体时应该使用的名称。通常只称为字体名。通过调用 getFontName
方法检索字体名称。要确定系统上可用的字体外观,请调用 java.awt.GraphicsEnvironment.getAllFonts
方法。
通过getAttributes
方法,您可以访问有关Font
的信息。一个Font
对象的属性包括它的名称、大小、变换以及字体的特征,如粗细和倾斜。
LineMetrics
对象封装了与Font
相关的测量信息,如上升高度、下降高度和行间距:
以下图示显示了上升线、基线和下降线的位置:
这些信息用于正确地将字符沿着一行定位,并将行相对于其他行定位。您可以通过getAscent
、getDescent
和getLeading
方法访问这些行度量。您还可以通过LineMetrics
类访问有关Font
对象的高度、基线以及下划线和删除线特性的信息。