2016-06-21 377 views

回答

2

基本上答案是'不',虽然有几个级别的警告在那里。

PDF文件最常见的情况是它包含嵌入字体,并且该字体是子集。在这种情况下,字体将使用自定义编码,以便在显示器上看到“Hello”时,实际字符代码可能是“Axtte”或类似的乱码。 如果字体也包含一个ToUnicode表,你可以在技术上创建一个嵌入子集的同一家庭的规则字体作为粗体或斜体,并嵌入,它会工作。这将是一个巨大的工作量。

如果字体不是子集,那么它可能不包含自定义编码,这将使该任务更容易,因为您不必重新编码替换。

如果未嵌入字体,则只需更改Font对象中的字体名称,因为PDF消费者无论如何都必须找到替换字体。请注意,因为PDF是一种二进制格式,并且索引(xref)包含文件中每个对象的偏移量,所以任何更改都将意味着必须重构xref表,这又是一项相当重要的任务。

我不知道任何工具会自动为你做这些事情,你必须自己写,尽管有些事情可以自动完成。例如,MuPDF将'修复'一个PDF文件,其中有一个不正确的xref表。

甚至在所有这一切之后,可能的情况是斜体或粗体字体与普通字体相比会有所不同,并且如果用常规字体替换它们会看起来很奇特。

因此,从根本上说,没有。

相关问题