下面是我生成阿拉伯隐藏文本 pdf 的代码。我在图像下添加文本。生成pdf后,按ctrl+a时看不到文字。这只发生在阿拉伯字符上,而不是英文字符:
Adobe reader-->当我按ctrl+a时,它只突出显示位置而不显示文本
Ubuntu 文档查看器-->当我按 ctrl+a 时,它会突出显示并显示一些文本。当我尝试用鼠标选择时,它会显示所有这些。
可能是什么原因?当我按 ctrl+a 按钮时,如何确保看到所有隐藏的文本?
……
Document document = new Document();
PdfWriter writer = PdfWriter.getInstance(document, new FileOutputStream("output.pdf"));
document.open();
Image image = Image.getInstance("/home/burak/IdeaProjects/example.jpg");
image.setAbsolutePosition(0, 0);
document.setPageSize(new Rectangle(image.getWidth(), image.getHeight()));
document.add(image);
PdfContentByte contentByte;
contentByte = writer.getDirectContentUnder();
contentByte.beginText();
contentByte.moveText(100, 100);
contentByte.setFontAndSize(BaseFont.createFont("data/simpo.ttf", BaseFont.IDENTITY_H, true), 30);
contentByte.showText("100-100-ﻡﻭﺱﻯ ﺍﻭﻍﻝﻯ ﺍﺱﻡﺍﻉﻯﻝ");
contentByte.endText();
contentByte.beginText();
contentByte.moveText(100, 200);
contentByte.setFontAndSize(BaseFont.createFont("data/simpo.ttf", BaseFont.IDENTITY_H, true), 30);
contentByte.showText("100-200-ﻡﻭﺱﻯ ﺍﻭﻍﻝﻯ ﺍﺱﻡﺍﻉﻯﻝ");
contentByte.endText();
contentByte.beginText();
contentByte.moveText(100, 300);
contentByte.setFontAndSize(BaseFont.createFont("data/simpo.ttf", BaseFont.IDENTITY_H, true), 30);
contentByte.showText("100-300-ﻡﻭﺱﻯ ﺍﻭﻍﻝﻯ ﺍﺱﻡﺍﻉﻯﻝ");
contentByte.endText();
contentByte.beginText();
contentByte.moveText(0, 0);
contentByte.setFontAndSize(BaseFont.createFont("data/simpo.ttf", BaseFont.IDENTITY_H, true), 30);
contentByte.showText("0-0-ﻡﻭﺱﻯ ﺍﻭﻍﻝﻯ ﺍﺱﻡﺍﻉﻯﻝ");
contentByte.endText();
contentByte.beginText();
contentByte.moveText(120, 290);
contentByte.setFontAndSize(BaseFont.createFont("data/simpo.ttf", BaseFont.IDENTITY_H, true), 30);
contentByte.showText("120-290-ﻡﻭﺱﻯ ﺍﻭﻍﻝﻯ ﺍﺱﻡﺍﻉﻯﻝ");
contentByte.endText();
contentByte.beginText();
contentByte.moveText(120, 310);
contentByte.setFontAndSize(BaseFont.createFont("data/simpo.ttf", BaseFont.IDENTITY_H, true), 30);
contentByte.showText("120-300-ﻡﻭﺱﻯ ﺍﻭﻍﻝﻯ ﺍﺱﻡﺍﻉﻯﻝ");
contentByte.endText();
document.close();
..
提前致谢