springboot实现pdf里面插入图片
1.在pdf里面的固定位置插入图片logo
引入依赖itextpdf
<dependency>
<groupId>com.itextpdf</groupId>
<artifactId>itextpdf</artifactId>
<version>5.4.2</version>
</dependency>
2.编写测试代码,在固定位置,页码,设置插入图片透明度,大小
/**
* 测试用例
*/
@Test
public void test1() throws IOException, DocumentException {
//pdf文件存放在d盘
File file = new File("D:\\ERC\\pdf插入图片测试\\ERC初级学员(BLS)证书.pdf");
//合成后的文件
FileOutputStream outputStream = new FileOutputStream("D:\\ERC\\pdf插入图片测试\\ERC初级学员(BLS)证书_aa.pdf");
PdfReader reader = new PdfReader(new FileInputStream(file));
PdfStamper stamper = new PdfStamper(reader, outputStream);
//将签名图片放在pdf文件的第1页
PdfContentByte over = stamper.getOverContent(1);
//签名图片
Image contractSealImg = Image.getInstance("D:\\ERC\\pdf插入图片测试\\测试.jpeg");
over.saveState();
PdfGState pdfGState = new PdfGState();
pdfGState.setFillOpacity(1F); //给图片设置透明度
over.setGState(pdfGState);
contractSealImg.setAbsolutePosition(215,100); //设置图片位置
contractSealImg.scaleAbsolute(60, 60); //设置图片大小
over.addImage(contractSealImg); //将图片添加到pdf文件
over.restoreState();
stamper.setFormFlattening(true);
stamper.close();
reader.close();
outputStream.close();
}
3.原pdf
插入成功后