如何解决在UIDAI aadhaar中屏蔽aadhaar号码pdf
有人知道如何从UIDAI网站下载的aadhaar pdf中掩盖aadhaar号码。
我已经尝试过下面的itext代码。它不适用于aadhaar PDF,但适用于其他普通pdf
public static void main(String[] args) throws IOException,DocumentException {
File file = new File(DEST);
file.getParentFile().mkdirs();
new MainClassName().manipulatePdf(SRC,DEST);
}
public void manipulatePdf(String src,String dest) throws IOException,DocumentException {
PdfReader reader = new PdfReader(src);
PdfDictionary dict = reader.getPageN(1);
PdfObject object = dict.getDirectObject(PdfName.CONTENTS);
PdfArray refs = null;
if (dict.get(PdfName.CONTENTS).isArray()) {
refs = dict.getAsArray(PdfName.CONTENTS);
} else if (dict.get(PdfName.CONTENTS).isIndirect()) {
refs = new PdfArray(dict.get(PdfName.CONTENTS));
}
for (int i = 0; i < refs.getArrayList().size(); i++) {
PRStream stream = (PRStream) refs.getDirectObject(i);
byte[] data = PdfReader.getStreamBytes(stream);
stream.setData(new String(data).replace("8989 7890 4567","XXXX XXXX 4567").getBytes());
}
PdfStamper stamper = new PdfStamper(reader,new FileOutputStream(dest));
stamper.close();
reader.close();
}
也尝试了此帖子中的建议(即使用pdfbox) Search and replace text in PDF using JAVA
即使对于aadhaar PDF不起作用,但对于普通pdf也起作用
(我知道我们可以从UIDAI网站本身下载带遮罩的aadhaar pdf,但是我需要通过JAVA来完成此操作
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。