一家只做性价比的网站,网站建设询价报告,永和建设集团有限公司网站,网站怎么做备份java使用itext将图片放到pdf模板的指定位置前面的准备步骤可以参考我的上一篇文章这里直接上代码这里用的图片是路径的形式#xff0c;还有种情况是图片是base64的时候#xff0c;这种情况就需要转一下图片格式了#xff0c;具体代码如下#xff1a;前面的准备步骤可以参考…
java使用itext将图片放到pdf模板的指定位置前面的准备步骤可以参考我的上一篇文章这里直接上代码这里用的图片是路径的形式还有种情况是图片是base64的时候这种情况就需要转一下图片格式了具体代码如下前面的准备步骤可以参考我的上一篇文章
java使用itext填充pdf模板超简单教学有手就行
这里直接上代码 Testpublic void testPic() throws Exception {// 模板文件路径String templatepath F:\\pdfWork\\2\\test9.pdf;// 生成的文件路径String targetpath F:\\pdfWork\\2\\test10.pdf;// 这个指的是模板中对应位置的名字String fieldname flag;// 图片路径String imagepath F:\\图片\\1.jpg;// 读取模板文件InputStream input new FileInputStream(new File(templatepath));PdfReader reader new PdfReader(input);PdfStamper stamper new PdfStamper(reader, new FileOutputStream((targetpath)));// 提取pdf中的表单AcroFields form stamper.getAcroFields();form.addSubstitutionFont(BaseFont.createFont(Font/SIMYOU.TTF, BaseFont.IDENTITY_H, BaseFont.NOT_EMBEDDED));// 通过域名获取所在页和坐标左下角为起点int pageno form.getFieldPositions(fieldname).get(0).page;Rectangle signrect form.getFieldPositions(fieldname).get(0).position;float x signrect.getLeft();float y signrect.getBottom();// 读图片Image image Image.getInstance(imagepath);// 获取操作的页面PdfContentByte under stamper.getOverContent(pageno);// 这里控制图片的大小//image.scaleToFit(signrect.getWidth(), signrect.getHeight());image.scaleToFit(100, 100);// 添加图片image.setAbsolutePosition(x, y);under.addImage(image);stamper.close();reader.close();}这里用的图片是路径的形式还有种情况是图片是base64的时候这种情况就需要转一下图片格式了具体代码如下
Testpublic void testPic() throws Exception {// 模板文件路径String templatepath F:\\pdfWork\\2\\test9.pdf;// 生成的文件路径String targetpath F:\\pdfWork\\2\\test10.pdf;// 这个指的是模板中对应位置的名字String fieldname flag;// 读取模板文件InputStream input new FileInputStream(new File(templatepath));PdfReader reader new PdfReader(input);PdfStamper stamper new PdfStamper(reader, new FileOutputStream((targetpath)));// 提取pdf中的表单AcroFields form stamper.getAcroFields();form.addSubstitutionFont(BaseFont.createFont(Font/SIMYOU.TTF, BaseFont.IDENTITY_H, BaseFont.NOT_EMBEDDED));// 通过域名获取所在页和坐标左下角为起点int pageno form.getFieldPositions(fieldname).get(0).page;Rectangle signrect form.getFieldPositions(fieldname).get(0).position;float x signrect.getLeft();float y signrect.getBottom();// 读图片//这里就是base64 的码String imgStr byte [] byteArray Base64.getDecoder().decode();Image image Image.getInstance(byteArray);// 获取操作的页面PdfContentByte under stamper.getOverContent(pageno);// 根据域的大小缩放图片//image.scaleToFit(signrect.getWidth(), signrect.getHeight());image.scaleToFit(100, 100);// 添加图片image.setAbsolutePosition(x, y);under.addImage(image);stamper.close();reader.close();}