使用iText将字体嵌入PDF文件

moo*_*nli 10 embed tags fonts map itext

我定义了一个标签映射,并获得了一个XML数据文件.我想使用iText将XML数据文件转换为PDF.问题是如何在将XML转换为PDF时将字体(例如波兰字体,中文字体)嵌入到目标PDF中?

小智 9

如果您正在使用iText做更多工作,您可能需要投资iText书 - 它包含iText所有功能的示例.

在创建定义字体嵌入的字体时,您指定了一个参数:

BaseFont helvetica = BaseFont.createFont(BaseFont.HELVETICA, BaseFont.CP1252, BaseFont.EMBEDDED);
Font font = new Font(helvetica, 12, Font.NORMAL);
Run Code Online (Sandbox Code Playgroud)

您可以在此处找到更多与iText字体相关的示例: http://1t3xt.info/examples/browse/?page=toc&id=14

  • 问题解决了.我们可以在TagMap中嵌入配置字体.将"embedded"属性设置为"true"表示字体嵌入.不管怎么说,还是要谢谢你. (4认同)

Dan*_*lor 6

但是,如果您没有单个字体匹配您使用的任何字符并且您需要多种字体,则会遇到问题.

在这种情况下,FontSelector类适合您.

我写过一篇简短的文章:http:
//lechlukasz.wordpress.com/2010/01/06/using-dynamic-fonts-for-international-texts-in-itext/


pen*_*s90 6

这是指示iText嵌入所有字体的一种非常简单的方法.在代码之前插入此代码以加载字体:

FontFactory.defaultEmbedding = true;
Run Code Online (Sandbox Code Playgroud)

  • 请注意,在iTextSharp中,FontFactory.DefaultEmbedding是一个只读属性. (3认同)