Font类

  • Font(Font font):由已知Font创建新font,就像复制黏贴一样
  • Font(String name,int style,int size):指定字体、样式和大小创建Font对象。其中name为字体名称,例如“Times New Roman”,“Arial Italic”,”宋体”等。
  • 字体名称也可以加入字体样式。当字体名称中加入字体样式时,应当注意和参数字体样式组合的结果。当两者不互相矛盾时,最终显示效果为两者叠加的效果,例如 name = “Arial Italic”和 style = “Font.BOLD” 组合的显示效果为即是斜体又是粗体的效果,与 name = “Arial Bold Italic” 或者 style = “Font.BOLD + Font.ITALIC” 的效果相同。当两者相同时,例如 “Arial BOLD” 和 “Font.BOLD” 的组合效果并不会双倍加粗字体,斜体同理。当两者相互矛盾时,即 “Arial Bold” 和 “Font.PLAIN” 同时使用时,显示效果为加粗。
  • 如果无法找到所要求的字体的样式,则字体系统可以通过相应的算法实现所要求的样式,例如要求倾斜,但相应字体没有可用的斜体外观,则会调用相关算法使字体倾斜。
  • 如果无法找到要求的字体名称,则会使用默认字体,并且通过 getFontName() 得到的字体名称为 “Dialog.plain/Dialog.bold/Dialog.italic/Dialog.bolditalic”, 通过 getFamily() 得到的是 “Dialog”。
  • style:字体样式。常用的值为 Font.PLAIN, Font.BOLD, Font.ITALIC 三者的任意结合,用运算符连接,通常为加号,三者的值分别为 0, 1, 2, 组合后按运算出的值对应显示效果,结果为 3 时则是加粗加斜的字体,也可以直接给出字体样式相应的数字值对字体样式进行设置,当数值没有对应的字体样式时,显示效果为普通样式,即 Font.PLAIN.
  • 常用字体样式:
    • public static final int PLAIN = 0;
    • public static final int BOLD = 1;
    • public static final int ITALIC = 2
    • public static final int ROMAN_BASELINE = 0; //罗马字体的基线
    • public static final int CENTER_BASELINE = 1; //印度字的基线
    • public static final int HANGING_BASELINE = 2; //中文、日文等表意文字的基线
    • public static final int TRUETYPE_FONT = 0;
    • public static final int TYPE1_FONT = 1;
  • 常用方法

    • String getFamily() - 返回此字体系列的名称。

    • String getFontName() - 返回此字体外观的名称。

    • String getName() - 返回此字体的逻辑名称,注意此名称为字体的逻辑名称,即新建字体时第一个参数,即使计算机中无法找到此字体,该函数返回的依然是参数中指定的字体名称,也就是说,该函数返回的是新建字体时第一个参数的字符串值,即使字体名称中指定了字体系列的样式时,也会原封不动地返回。

    • int getSize() - 整数型式返回该字体磅值的大小。

    • float getSize2D() - 浮点数形式返回该字体磅值的大小。

    • int getStyle() - 返回此字体的样式,返回的整数与字体样式的对应关系见上文。

    • boolean isBold() - 返回此字体的样式是否为粗体,粗斜体时为真。

    • boolean isItalic() - 返回此字体的样式是狗为斜体,粗斜体时为真。

    • boolean isPlain() - 返回此字体的样式是否为普通。

    • String toString() - 将此 Font 对象转换为字符串(应该只打印其中不为null的属性。