我试图了解如何将字体嵌入到我的pdf / a中
我找到了很多答案但是使用了iTextSharp
在我的cas中,我使用了iText7,我试过的都给了我错误:
"必须嵌入所有字体......"
我有一个ttf文件用于我的字体,但我没有找到一种方法将其嵌入到我的pdf中使用它...
有人可以帮助我吗? 提前致谢
kor6k
答案 0 :(得分:0)
如tutorial中所述并且您提到的错误(“所有字体必须嵌入”)所示,您需要嵌入字体。
您可能没有定义字体,在这种情况下,将使用标准Type 1 字体Helvetica。这些标准的Type 1 字体从不嵌入,因此您需要选择另一种字体。
本教程中的示例使用免费字体FreeSans:
public const String FONT = "resources/font/FreeSans.ttf";
字体对象的定义如下:
PdfFont font = PdfFontFactory.CreateFont(FONT, PdfEncodings.WINANSI, true);
此字体用于Paragraph
,如下所示:
Paragraph p = new Paragraph();
p.SetFont(font);
p.Add(new Text("Font is embedded"));
document.Add(p);
这是C#版本。如果您需要Java版本,请查看Java version of the tutorial:
public static final String FONT = "src/main/resources/font/FreeSans.ttf";
PdfFont font = PdfFontFactory.createFont(FONT, PdfEncodings.WINANSI, true);
Paragraph p = new Paragraph();
p.setFont(font);
p.add(new Text("Font is embedded"));
document.add(p);
如果您已经使用了这种方法,并且仍然遇到错误,那么您可能在某些地方没有定义嵌入字体的内容。