我正在尝试生成PDF的“古吉拉提字体”使用下面的代码使用itextsharp api。
BaseFont古吉拉特文= BaseFont.CreateFont("D\Gujarati\shruti.ttf",BaseFont.IDENTITY_H,BaseFont.EMBEDDED);字体fontNormal =新字体(古吉拉特文,10,Font.NORMAL);
PDF正在生成,但字体未正确显示。如果我将相同PDF转换为word,则字体可以正确显示。
发布于 2018-09-27 23:23:54
这篇文章详细介绍了如何加载pdfCalligraph,使用正确的字体(因为字体必须能够显示字符),以及如何将它们添加到PdfDocument
首先,您需要确保pdfCalligraph位于类路径中。如果您使用的是Maven,只需添加依赖项。
https://developers.itextpdf.com/content/itext-7-jump-start-tutorial/installing-itext-7
其次,您需要加载有效的许可证。pdfCalligraph是iText平台的一个闭源插件。所以需要一个许可证。
接下来,下面的代码示例应该可以做到这一点。
Document arabicPdf = new Document(new PdfDocument(new PdfWriter("/path/to/arabic.pdf")));
// Arabic text starts near the top right corner of the page
arabicPdf.setTextAlignment(TextAlignment.RIGHT);
// create a font, and make it the default for the document
PdfFont f = PdfFontFactory.createFont("/path/to/DroidKufi-Regular.ttf", PdfEncodings.IDENTITY_H, true);
arabicPdf.setFont(f);
// add content: السلام عليكم (as-salaamu 'aleykum - peace be upon you)
arabicPdf.add(new Paragraph("\u0627\u0644\u0633\u0644\u0627\u0645 \u0639\u0644\u064A\u0643\u0645"));
arabicPdf.close();它是从iText网站上逐字复制的。https://itextpdf.com/itext7/pdfcalligraph
https://stackoverflow.com/questions/52519552
复制相似问题