本文实例为大家分享了java在pdf模板的指定位置插入图片的具体代码,供大家参考,具体内容如下

java操作pdf有个非常好用的库itextpdf,maven:

com.itextpdf

itextpdf

5.5.6

com.itextpdf

itext-asian

5.2.0

思路:

Adobe的Acrobat可以对pdf进行编辑,在文档中插入域,这个插入的域就是图片的位置。这儿有关于域的介绍,但是这不重要,我们只是把域作为一个占位符用;

利用itextpdf得到目标域所在的页面、位置、大小;

利用域的坐标,把图片以绝对位置的方式插入到pdf中。

代码

public static void main(String[] args) throws Exception {

// 模板文件路径

String templatePath = "template.pdf";

// 生成的文件路径

String targetPath = "target.pdf";

// 书签名

String fieldName = "field";

// 图片路径

String imagePath = "image.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("STSong-Light","UniGB-UCS2-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.setAbsolutePosition(x, y);

under.addImage(image);

stamper.close();

reader.close();

}

参考

java pdf域插入img_java实现在pdf模板的指定位置插入图片相关推荐

  1. java pdf添加图片_java实现在pdf模板的指定位置插入图片

    本文实例为大家分享了java在pdf模板的指定位置插入图片的具体代码,供大家参考,具体内容如下 java操作pdf有个非常好用的库itextpdf,maven: com.itextpdf itextp ...

  2. java pdf 插入图片_java实现在pdf模板的指定位置插入图片

    本文实例为大家分享了java在pdf模板的指定位置插入图片的具体代码,供大家参考,具体内容如下 java操作pdf有个非常好用的库itextpdf,maven: com.itextpdf itextp ...

  3. php数组中插入数值,php中如何在数组指定位置插入数据单元

    方法: 使用array_splice()函数. 语法格式:array_splice(array,offset,length,array) 参数: array:必需.规定数组. offset:必需.数值 ...

  4. java pdf 插入图片_java在pdf模板的指定位置插入图片

    个人感觉pdf的操作比word舒心多了 java操作pdf有个非常好用的库itextpdf,maven: com.itextpdf itextpdf 5.5.6 com.itextpdf itext- ...

  5. js写入指定html,js 指定位置插入html标签(可编辑div)

    demo效果如下: html代码部分如下: js获取编辑框游标的位置 #Div1, #Div2 { width: 500px; height: 100px; border: solid 1px bla ...

  6. java使用itext将图片放到pdf模板的指定位置

    java使用itext将图片放到pdf模板的指定位置 前面的准备步骤可以参考我的上一篇文章 这里直接上代码 这里用的图片是路径的形式,还有种情况是图片是base64的时候,这种情况就需要转一下图片格式 ...

  7. Word、PPT、PDF 文件怎么批量插入首页、扉页、尾页?怎么在指定位置插入页?

    概要:在我们日常办公中,经常会碰到需要给一批 Word 文件批量插入首页或者尾页,或者在指定的位置插入新的页的需求,当然除了 Word,PDF 以及 PPT 也有相同的需求.「我的ABC软件工具箱」就 ...

  8. 使用Itext操作PDF,修改文本内容及指定位置插入图片

    参考博客:修改文本的 参考博客:插入图片的 这里基于修改文本的博客编写的,主要解决了几个问题: 1.文件乱码 2.设置区域背景色 3.设置文字字体颜色 4.插入图片空指针 5.指定位置插入偏移 等等问 ...

  9. java word添加图片_Java 替换word文档文字并指定位置插入图片

    先说下 需要的依赖包 org.apache.poi poi-excelant 3.12 org.apache.poi poi-scratchpad 3.12 org.apache.poi poi-oo ...

最新文章

  1. 算法训练 P0103
  2. C# DllImport
  3. 论字符界面和WEB界面配置的优缺点
  4. SAP HR信息类型
  5. trunc( mysql写法_使用oracle的trunc和dbms
  6. problem k: 查找某一个数_quot;细节魔鬼quot; 二分查找
  7. 知道Google map上面街景怎么来的吗?-相当强大
  8. LeetCode 128. 最长连续序列(哈希set)
  9. Prometheus+Grafana PG监控部署以及自定义监控指标
  10. oracle 表复制 long,【学习笔记】Oracle数据库使用copy实现long类型转移表空间案例 ORA-00997...
  11. python uiautomator2 toast_Android自动化测试 - 获取toast提示(Appium+Python+UiAutomator2)
  12. word交叉引用自动编排word参考文献
  13. 正确的姿势很重要:该如何执笔
  14. 【codevs1419】藤原妹红 树形DP
  15. transmission简单使用
  16. 光功率显示c语言程序,c语言程序设计 - 三电实验教学中心.doc
  17. qt opengl 加载3d模型(obj格式)
  18. 冈萨雷斯数字图像处理第三章空间滤波
  19. 什么是网络变压器,它是干什么用的?作用/参数表/价格及型号体系有哪些?怎么测量网络变压器好坏
  20. 从高门槛到低月费,练遇智能健身房实力改写新健身时代

热门文章

  1. 睿智的目标检测20——利用mAP计算目标检测精确度
  2. PAT乙级C语言 1028 人口普查
  3. 苹果或将微信下架系谣言,苹果微信牵手ios11
  4. App高危漏洞 Android用户记得更新百度全家桶
  5. python模拟足球比赛_如何使用python从livescores获取足球比赛结果
  6. kvm虚拟机扩展磁盘空间
  7. php面向对象--php面向对象ppt
  8. pdf压缩工具怎么用?如何压缩pdf
  9. Python第一天:你必须要知道的Python擅长领域以及各种重点学习框架(包含Python在世界上的应用)
  10. 如何进行js的debug