【发布时间】:2014-09-01 06:25:31
【问题描述】:
嗨
我知道很多人以前可能问过这个问题。我已经阅读了几乎所有的内容`但它不能帮助我解决我的问题。
我正在使用 iText java 库来生成波斯语 PDF。我正在使用以下代码:
Document document = new Document(PageSize.A4,50,50,50,50);
FileOutputStream fos = new FileOutputStream("D:\\ITextTest.pdf");
PdfWriter writer = PdfWriter.getInstance(document,fos);
document.open();
BaseFont bf = BaseFont.createFont("C:\\Windows\\Fonts\\XB YagutBd.ttf", BaseFont.IDENTITY_H, BaseFont.EMBEDDED);
Font a = new Font(bf,10);
Paragraph p1 = new Paragraph("سلام دوست من");
p1.setFont(a);
document.add(p1);
document.close();
但是当我执行代码时,没有任何内容写入 PDF 文件并且它是空白的。请注意,“XB YagutBd.ttf”是波斯 Unicode 字体,“p1”包含一些波斯字符。
我该怎么办?我陷入了这个问题...请帮助我。
【问题讨论】:
-
尝试在创建段落时而不是稍后设置字体:
Paragraph p1 = new Paragraph("سلام دوست من", a); -
亲爱的@ChrisHaas,它对我有用!我现在可以看到字符了。但我现在有另一个问题......字符显示为分开而不是“连接”,因为它应该在波斯正字法中:(
标签: java pdf-generation itext persian