找了一圈pdf在mac下的水印工具,都不太好用。java写一个吧
以下代码依赖itext5.3.3包,
从我的网盘下载
java操作pdf 依靠itext5.3.3
//读取原来的pdf
PdfReader reader = new PdfReader("/test/" + "1.pdf");
//生成以后的pdf
PdfStamper stamp = new PdfStamper(reader, new FileOutputStream("/test/" + "createSamplePDF2.pdf"));
int max = reader.getNumberOfPages();
//max =2;
// 文字水印
for (int i = 1; i <= max; i++) {
PdfContentByte over = stamp.getOverContent(i);
over.beginText();
BaseFont bf = BaseFont.createFont(BaseFont.HELVETICA, BaseFont.WINANSI, BaseFont.EMBEDDED);
over.setFontAndSize(bf, 16);
over.setTextMatrix(10, 10);
over.setColorFill(BaseColor.GRAY);
over.showTextAligned(Element.ALIGN_LEFT, "java blog java-er.com ", 150,670, 0);
// 0 0 0 表示左下脚 最后一个0是角度,0表示横着 45 表示斜着
over.endText();
}
reader.close();
stamp.close();
}