java 植入 form_pdf form表单制作以及用java程序填充表单
程序代码如下
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Set;
import com.itextpdf.text.DocumentException;
import com.itextpdf.text.pdf.AcroFields;
import com.itextpdf.text.pdf.BaseFont;
import com.itextpdf.text.pdf.PdfReader;
import com.itextpdf.text.pdf.PdfStamper;
public class Reader {
public static void main(String [] args){
//1 准备要填充的数据
Map paraMap = new HashMap();
paraMap.put("XM", "付测试");
paraMap.put("XB", "男");
paraMap.put("MZ", "汉");
paraMap.put("CSRQ", "男");
paraMap.put("GMSFHM", "111111111111111111");
try {
//2 读入pdf表单
PdfReader reader = new PdfReader("G:\\Workspaces\\MyEclipse2013\\JAVAPDF\\blspb.pdf");
//3 根据表单生成一个新的pdf
PdfStamper ps = new PdfStamper(reader,new FileOutputStream("G:\\Workspaces\\MyEclipse2013\\JAVAPDF\\my_blspb.PDF"));
//4 获取pdf表单
AcroFields s = ps.getAcroFields();
//5给表单添加中文字体 这里采用系统字体。不设置的话,中文可能无法显示
BaseFont bf = BaseFont.createFont("C:/WINDOWS/Fonts/SIMSUN.TTC,1",BaseFont.IDENTITY_H, BaseFont.EMBEDDED);
s.addSubstitutionFont(bf);
//6遍历pdf表单表格,同时给表格赋值
Map fieldMap = s.getFields();
Set set = fieldMap.entrySet();
Iterator iterator = set.iterator();
while(iterator.hasNext()){
Entry entry = (Entry) iterator.next();
String key = (String)entry.getKey();
if(paraMap.get(key)!=null){
s.setField(key, ""+paraMap.get(key.toUpperCase()));
}
}
ps.setFormFlattening(true); // 这句不能少
ps.close();
reader.close();
} catch (IOException e) {
// TODO 自动生成的 catch 块
e.printStackTrace();
} catch (DocumentException e) {
// TODO 自动生成的 catch 块
e.printStackTrace();
}
}
}
java 植入 form_pdf form表单制作以及用java程序填充表单相关推荐
- 写入多个表_制作属于自己的教学工作表
Worksheet Crafter Premium Edition是一款十分出色的教学工作表制作软件,能够为小学,中学和特殊学校创建差异化的工作表.这款软件除了输入自由文本之外,还可以利用软件自身带有 ...
- 微信提交表单到服务器,微信小程序页面表单如何跟图片一起上传服务器
拆开写. 表单提交是 wx.request 上传图片是 wx.uploadFile 你需要写一个通用图片上传接口,上传图片后台返回图片的url.这个通用接口在任何需要提交图片的表单都可以用到. 添加图 ...
- arm ida 伪代码 安卓 符号表_IDA 制作 sig文件 gdb 导入符号表
背景 最近比赛遇到了一个题目, 32位静态链接去符号了. 所以用IDA分析的时候很多libc的库函数都无法识别, 就需要在 IDA 中引入 sig 文件. 从而可以识别诸如 read, write, ...
- HTML用<form>表单制作个人简历
在HTML表单制作一张个人简介 源代码如下: ```html <!DOCTYPE html> <html> <head> <meta charset=&quo ...
- 从零开始学前端:表单制作 --- 今天你学习了吗?(CSS:Day05)
从零开始学前端:程序猿小白也可以完全掌握!-今天你学习了吗?(CSS) 复习:从零开始学前端:表格制作 - 今天你学习了吗?(CSS:Day04) 文章目录 从零开始学前端:程序猿小白也可以完全掌握! ...
- html如何制作一个漂亮的表格?+ 列表制作 + 表单制作(干货!直接收代码)
https://blog.csdn.net/hanhanwanghaha宝藏女孩 欢迎您的关注! 欢迎关注微信公众号:宝藏女孩的成长日记 如有转载,请注明出处(如不注明,盗者必究) 目录 html如何 ...
- html制作网页怎样做表单,(html网页表单制作.doc
(html网页表单制作 1.表单标签<form>--</form> 语法:<FORM name="form_name" ACTION="UR ...
- HTML5基础学习(7):登录表单制作、表单知识补充
一.登录表单制作 有的时候用户需要填写信息,然后把填写完的信息交给服务器.把数据提交给服务器的动作就需要一个新的知识点:表单. (1)常见的表单控件 大部分的表单控件都是<input>编写 ...
- java获取表单隐藏域的值,Servlet中使用表单隐藏域
Servlet中使用表单隐藏域 表单隐藏域也是一种会话跟踪技术. 如果使用了"表单隐藏域",将使用一个隐藏(不可见)文本域来维护用户的状态. 在这种情况下,我们将信息存储在表单的隐 ...
最新文章
- 有赞融资10亿港元 腾讯领投加紧布局产业互联网
- java gui 窗口 传值_java – GUI – 在不同窗口之间传输数据(J...
- python多线程同步与互斥_Python之多线程:线程互斥与线程同步
- java数组遍历赋值,最终入职阿里
- esp32 cam工作电流_我如何在家工作:Cam的生产力之痛
- PE文件RV转FOA及FOA转RVA
- php整合proxool,java discuz的开发笔记-模板代码转换
- ExtJS学习之window
- ExtremeC3Net: 使用高级C3模块的极轻量人像分割模型
- 物联网未来已来,新零售已处在巨变前夕
- Android核心分析之二十五Android GDI之共享缓冲区机制
- 震惊!PC端QQ也能防撤回?
- 解决Windows系统无法复制粘贴问题
- 深夜看了张一鸣的微博,我不得不惊
- php收银系统如何连接pos机,收银pos机怎么连接?
- 最小的操作系统MenuetOS
- 怎么把虚拟机的计算机弄到桌面,Win10自带的虚拟机功能,教你这样设置,免费让一台电脑变3台!...
- 基于恩智浦MK60DN512Z系列单片机的智能模型车主程序与子程序集
- FPGA烧录程序遇到的问题
- 小程序的createInnerAudioContext在iOS没有声音的解决方法