10

有没有办法像阅读 TrueType 字体一样在 Java 中阅读 Open Type 字体?

这对 TTF 非常有效,但我还没有弄清楚如何对 Open Type 字体做同样的事情。

Font f = Font.createFont( Font.TRUETYPE_FONT,
new FileInputStream("f.ttf") );

请注意,我无法转发已安装的字体。我在我的程序中提供了字体,但不想在系统范围内安装它。

4

4 回答 4

5

Java OpenType 字体支持取决于您的操作系统和 JDK 版本。

在 Java 6 之前,您只能使用 TrueType 风格的 OpenType 字体。使用 Java 6,您可以使用所有 OpenType 字体,但您不会受益于连字等高级排版功能。

于 2009-07-13T15:39:49.770 回答
3

我认为 java 中没有 Open Type Font 支持(至少不是免费的),iText 声称有这种支持,几个月前尝试过但没有用,对我有用的是一个名为 FontForge 的程序,我用于从我随后使用的 otf 创建一个 ttf。

于 2009-05-16T15:04:10.630 回答
3

.otfJava 1.6 不支持Open Type ( ) 字体文件。从 Java 1.7 开始,添加了支持:

Font font = Font.createFont(Font.TRUETYPE_FONT, new File("MyFont.otf"));
font  = font.deriveFont(Font.BOLD, 40);

label.setFont(font);

更多细节:

于 2015-08-07T08:59:14.430 回答
1

我使用字体转换器将OTF转换为TTF文件。有一些在线服务(例如www.freefontconverter.com)可以完成这项工作。对我来说,这是一个快速而简单的解决方法。

于 2012-10-17T08:01:10.283 回答