0

我的项目与计费应用程序有关,我正在使用 iTextPdf 库生成 PDF 文件。但是我的要求是在 iTextPdf 生成的 PDF 中显示新的卢比符号,而不是“卢比”。

我知道遵循 Unicode\u20B9是为了新的卢比符号。我正在使用以下代码进行格式化:

String formater(String a) {
  DecimalFormat formatter = new DecimalFormat("\u20B9 000");
  return formatter.format(Double.parseDouble(a));
}

但生成的 PDF 文件不显示任何卢比符号。那么如何将它与 iTextPdf 库一起使用呢?是否需要与库本身合并任何其他字体?

4

2 回答 2

0

在 IDE 中更改不是问题。您的 iTextPDF 将以特定字符集将内容写入 PDF。控制数据是否正确显示。

你可以试试这两个链接

SO问题包含如何检查字符集

iTextPdf 网站了解如何更正字符集

于 2012-12-28T04:47:57.697 回答
0

感谢 mkl,Naveen 的帮助。

希望这可以帮助某人,我为此做了以下工作:

第 1 步:下载具有卢比符号 Unicode 的字体(为此我更新了我的 Windows(Windows 更新并获得了带有卢比符号的 arial 字体)

第 2 步:使用 iText,我使用 IDENTITY_H 编码创建了嵌入的基本字体:

BaseFont baseFont = BaseFont.createFont(this.getClass().getResource("arial.ttf").toString(), BaseFont.IDENTITY_H, BaseFont.EMBEDDED);
Font font = new Font(baseFont);

现在生成的 pdf 具有新的卢比符号。

于 2012-12-30T04:07:26.860 回答