【发布时间】:2012-11-10 18:48:53
【问题描述】:
我正在尝试在 Java 应用程序中使用一些嵌入在 PDF 文件中的字体。显然,Java 能够加载 Type1 和 TrueType 字体。根据几个网站的说法,PDF 中的 Type1c 字体基本上是 CFF 或 Type2 字体。 Java 7 的一个新特性是加载 CFF 字体,但 Font.createFont() 这样不起作用。
那么我哪里错了? Type1c 字体真的是 CFF/OpenType 字体吗?需要转换吗?
【问题讨论】:
-
Font.createFont 与嵌入在 PDF 中的数据不起作用,无论我使用哪种类型参数。由于 SUN 的旧 Java PDF 解析器项目能够将字体解析为 Type1C,因此我假设我将正确的字节传递给 createFont 方法。
-
怎么不工作?它会抛出异常吗?或者它似乎工作但没有显示字形?正如 Mark 所暗示的,字体只能在需要时嵌入到 PDF 中。你有什么相关的代码可以看吗?以及与您的代码相结合的示例 PDF 允许重现问题?
-
createFont with TYPE1_FONT 导致“java.awt.FontFormatException: bad pfa font”,对于 TRUETYPE_Font 它是“java.awt.FontFormatException: Unsupported sfnt /tmp/+~JF4438581181045380297.tmp”