我的PDF中缺少一些阿拉伯字母

时间:2018-03-13 10:40:53

标签: java pdf itext arabic

我有以下测试代码

Font arabic = FontFactory.getFont("C:\\Windows\\Fonts\\simpo.ttf",BaseFont.IDENTITY_H,16);

     try {
         Document d=new Document();
         PdfWriter writer = PdfWriter.getInstance(d, new FileOutputStream("C:\\Users\\Sana'a\\Downloads\\test.pdf"));
         d.open();
         PdfPTable table = new PdfPTable(1);
         table.setRunDirection(PdfWriter.RUN_DIRECTION_RTL);
         PdfPCell cell= new PdfPCell();
         cell.setBorder(Rectangle.NO_BORDER);
         Paragraph p= new Paragraph(jTextField1.getText(),arabic);
         Paragraph p2= new Paragraph("سناء علاء حسين",arabic);
         p.setAlignment(PdfPCell.ALIGN_LEFT);
         p2.setAlignment(PdfPCell.ALIGN_LEFT);
         cell.addElement(p);
         cell.addElement(p2);
         table.addCell(cell);
         d.add(table);
         d.close();
     }

     catch (Exception e) {
         System.out.println(e.getMessage());
     }

将一些文本打印到PDF文件,但PDF显示一些丢失的字母。 例如: 当我在jtext中写(بيداءعبدالله)时,PDF显示

بياء عب الله

和(سناءعلاءحسين)成为

سناء علاء حسي

请解决任何问题。

1 个答案:

答案 0 :(得分:1)

尝试使用覆盖全部阿拉伯字符的字体,例如Noto Naskh