我有一个水印要放到我的pdf里面。这个水印是一个.bmp图像,大小为2290 x 3026。我尝试将其调整大小以适应页面,但遇到了很多问题,是否有人可以提供建议?
Document document = new Document();
PdfWriter.getInstance(document, new FileOutputStream("result.pdf"));
document.open();
document.add(new Paragraph("hello"));
document.close();
PdfReader reader = new PdfReader("result.pdf");
int number_of_pages = reader.getNumberOfPages();
PdfStamper pdfStamper = new PdfStamper(reader, new FileOutputStream("result_watermark.pdf"));
// Get the PdfContentByte type by pdfStamper.
Image watermark_image = Image.getInstance("abstract(0307).bmp");
int i = 0;
watermark_image.setAbsolutePosition(0, 0);
watermark_image.scaleToFit(826, 1100);
System.out.println(watermark_image.getScaledWidth());
System.out.println(watermark_image.getScaledHeight());
PdfContentByte add_watermark;
while (i < number_of_pages) {
i++;
add_watermark = pdfStamper.getUnderContent(i);
add_watermark.addImage(watermark_image);
}
pdfStamper.close();
这里是 getScaled()
方法的输出结果。
826.0 - Width
1091.4742 - Height
很抱歉,我无法与您分享pdf文件中的图片。
我是否应尝试使用.jpg格式呢?我不太清楚iText对不同图像扩展名的处理情况。