iText PDF中的Unicode字符

问题描述 投票:4回答:2

我需要iText的帮助我看一些谷歌的结果和一些在这里,但没有找到任何适合我的东西。我需要在我的pdf中使用波兰字符,但我什么都没有。如果需要在评论中写下其他内容,我认为这是一个很重要的代码:

private static Font bigFont = new Font(Font.FontFamily.HELVETICA, 18, Font.BOLD);

另一个

Paragraph par = new Paragraph(Łabadzak, bigFont);

任何人都可以告诉我该怎么做才能使这个Ł在pdf和其他波兰人角色中可见

更新我资助这个,但不知道如何使用它为我的项目Polish character in itext PDF

java swing special-characters itext
2个回答
8
投票

你需要一个unicode字体。这是一个例子:

BaseFont bf = BaseFont.createFont("arialuni.ttf", BaseFont.IDENTITY_H, BaseFont.EMBEDDED);

Paragraph p = new Paragraph("Şinasi ıssız ile ağaç", new Font(bf, 22));

document.add(p);

http://abdullahakay.blogspot.com/2011/11/java-itext-unicode.html

编辑:

这里,字体文件名arialuni.tff/src/main/resources/下的静态资源,可以是您选择的任何Unicode字体文件。 Here是一个免费的Unicode字体文件列表,可在线获取。


3
投票

这取决于使用的字体和编码。我发现了这样的事情:

http://itext-general.2136553.n4.nabble.com/Polish-National-Characters-are-not-getting-displayed-in-the-PDF-created-by-iTExt-td2163833.html

有这样的例子:

BaseFont bf = BaseFont.createFont("c:/windows/fonts/arial.ttf", 
BaseFont.CP1250, BaseFont.EMBEDDED); 
Font font = new Font(bf, 12); 
String polish = "\u0104\u0105\u0106\u0107\u0118\u0119"; 
document.add(new Paragraph(polish, font)); 

请记住,某些字体不包含波兰国家字符。

© www.soinside.com 2019 - 2024. All rights reserved.