Java导出pdf文件数据
提示:导出pdf文件,需要3个jar包iText-2.1.5.jar,iTextAsian.jar,iText-rtf-2.1.4.jar。
public boolean outputPdfJhsy(EntityBean data) {
try {
Global.getInstance().LogApp("导出pdf开始");
String pdfpath = File.get("LEAP/NSESTModule/WRModule/nsjhsyzm.pdf").getAbsolutePath(); //从eclipse文件夹中得到pdf模版路径
String imgpath = File.get("LEAP/NSESTModule/WRModule/image/weiji.gif").getAbsolutePath(); //右下角盖章图片
PdfReader reader = new PdfReader(pdfpath);
//创建输出目录
String pdfSavePath = NameedPathUtil.getPath("default")+"nsestpdf/";
File.get(pdfSavePath).mkdir();
String filename = Global.getInstance().GetUUID()+".pdf";
pdfSavePath = pdfSavePath+filename;
PdfStamper stamp = new PdfStamper(reader, new FileOutputStream(pdfSavePath));
// 拿到第一页的上部内容部分
PdfContentByte over = stamp.getOverContent(1);
//获取表单域(用Adobe Acrobat Pro工具)
AcroFields form = stamp.getAcroFields();
SimpleDateFormat sdf2 = new SimpleDateFormat("yyyy年MM月dd日");
EntityBean bean = data;
try {
form.setField("busino", bean.getString("busino"));
form.setField("jsbm", bean.getString("jsbm"));
form.setField("wname",bean.getString("wname"));
form.setField("wsfz",bean.getString("wsfz"));
form.setField("mname",bean.getString("mname"));
form.setField("msfz",bean.getString("msfz"));
form.setField("whjd",bean.getString("whjd"));
form.setField("wxjzd",bean.getString("wxjzd"));
form.setField("hyzk",bean.getString("hyzk"));
form.setField("jsqk",bean.getString("jsqk"));
form.setField("zncount",bean.getString("zncount"));
form.setField("znqk",bean.getString("znqk"));
form.setField("slrq",sdf2.format( sdf.parse(bean.getString("slrq")) ) );
form.setField("wfjhsyzc",bean.getString("wfjhsyzc"));
form.setField("qtsm",bean.getString("qtsm"));
form.setField("wname2",bean.getString("wname2"));
form.setField("wsfz2",bean.getString("wsfz2"));
form.setField("zmlxname", bean.getString("zmlxname"));
form.setField("jbr",bean.getString("jbr"));
form.setField("lxdh",bean.getString("lxdh"));
form.setField("sprq",bean.getString("sprq"));
} catch (Exception e) {
Global.getInstance().LogApp("插入pdf表单域异常");
e.printStackTrace();
}
stamp.setFormFlattening(true); // 这句不能少
//创建一个image对象
Image image = Image.getInstance(imgpath);
//设置image对象的输出位置pa.getAsNumber(pa.size()-1).floatValue() 是该页pdf坐标轴的y轴的最大值
image.setAbsolutePosition(398,170);
image.scalePercent(70);
over.addImage(image);
over.stroke();
stamp.close();
Global.getInstance().LogApp("导出pdf结束");
} catch (FileNotFoundException e) {
Global.getInstance().LogApp("异常1");
e.printStackTrace();
return false;
} catch (DocumentException e) {
Global.getInstance().LogApp("异常2");
e.printStackTrace();
return false;
} catch (IOException e) {
Global.getInstance().LogApp("异常3");
e.printStackTrace();
return false;
} finally {
}
return true;
}
Java导出pdf文件数据的更多相关文章
- 史上最全的springboot导出pdf文件
最近项目有一个导出报表文件的需求,我脑中闪过第一念头就是导出pdf(产品经理没有硬性规定导出excel还是pdf文件),于是赶紧上网查看相关的资料,直到踩了无数的坑把功能做出来了才知道其实导出exce ...
- java生成pdf文件 --- Table
Java利用itext实现导出PDF文件 所需要的jar包:com.lowagie.text_2.1.7.v201004222200.jar jar包下载地址:http://cn.jarfire.or ...
- JAVA导出pdf实例
一.直接导出成PDF Java代码 1. import java.io.FileNotFoundException; 2. import java.io.FileOutputStream; 3. ...
- asp.net2.0导出pdf文件完美解决方案【转载】
asp.net2.0导出pdf文件完美解决方案 作者:清清月儿 PDF简介:PDF(Portable Document Format)文件格式是Adobe公司开发的电子文件格式.这种文件格式与操作系统 ...
- java导出word文件
java导出word文件 test5.ftl文件生存方法, 第一步:用word新建test5.doc,填写完整模板,将需导出数据用${}代替 第二步:将test5.doc另存为test5.xml 第三 ...
- java导出pdf功能记录
这几天已在做处理导出pdf文件的功能,摸索了几天总算可以了.记录下这几天遇到的问题. 1.网上基本都是基于Itext5和Itext7来处理的.我最终是在Itext5上成功了,itext7应该是模板出问 ...
- 水晶报表导出pdf文件
/// <summary> /// 导出pdf文件 /// </summary> /// <param name="mjsReport">报表文 ...
- .Net导出pdf文件,C#实现pdf导出
最近碰见个需求需要实现导出pdf文件,上网查了下代码资料总结了以下代码.可以成功的实现导出pdf文件. 在编码前需要在网上下载个itextsharp.dll,此程序集是必备的.楼主下载的是5.0版本, ...
- Java学习-022-Properties 文件数据写入
Properties 配置文件写入主要通过 Properties.setProperty 和 Properties.store 两个方法,此文以一个简单的 properties 文件写入源码做示例. ...
随机推荐
- Spring-Boot使用neo4j-java-driver-- 查找两个节点之间关系的最短路径
一.Cypher数据 create (小北:朋友圈{姓名:"小北", 喜欢的书类:"Poetry"}), (小菲:朋友圈{姓名:"小菲", ...
- 批量Ping执行Bash脚本
#!/bin/bash # Ping Batch Script # 连接超时时间 TMOUT= # 最大线程数 MAX_THREAD= # 保留内存大小 MIN_MEM= # 默认ip配置,可通过 - ...
- docker Dcokerfile学习---构建nginx环境
1.创建项目目录并上传包 $ mkdir docker_nginx $ cd docker_nginx 下载nginx包 $ wget http://nginx.org/download/nginx- ...
- 论文阅读笔记:《Generating Question-Answer Hierarchies》
题目: <Generating Question-Answer Hierarchies> 作者: Kalpesh Krishna & Mohit Iyyer What: 1.SQU ...
- Algo: Binary search
二分查找的基本写法: #include <vector> #include <iostream> int binarySearch(std::vector<int> ...
- node 模板引擎使用的步奏
//定义模板引擎 app.engine('html',swig.renderFile);//设置模板引擎所存放的位置app.set('views','/views');//注册所使用的模板引擎app. ...
- Spring - <bean parent="xxx" 属性>
总结 必要条件: 1.子bean必须与父bean保持兼容,也就是说子bean中必须有父bean定义的所有属性. 2.父bean必须是抽象bean或者定义lazy-init=true也就是不让bean工 ...
- __str__方法
"""str()就是可以自定义输出返回值,必须是str字符串""" class Dog: def __init__(self, name): ...
- jQuery 遍历 - eq() 方法
<!DOCTYPE html> <html> <head> <style> div { width:60px; height:60px; margin: ...
- 帝国cms简介显示转义字符问题
在模板中设置简介截取字数为0,前端显示用css控制即可 white-space: nowrap; overflow: hidden; text-overflow: ellipsis; 也可以 1,在后 ...