使用itext生成PDF文档入门
2010-08-27 13:00
429 查看
因项目的需要,近几天看了看itext生成PDF文档。
生成文档基本为5个步骤。
1,初始化Document对象,:Document document = new Document();
2,配置PDF的输出流:PdfWriter.getInstance(document,FileOutputStream("fileName"));
3,打开Docuement对象:document.open();
4,添加数据进入document对象中:document.add(elements);
5,关闭document对象:document.closed();
官方文档中有itext与servlet的集成,是用户能够在页面中打开PDF文档,目前项目使用struts2,因此参照官方文档使用struts2实现。
action :
public String getPdf(){
Document document = new Document();
ByteArrayOutputStream byOut = new ByteArrayOutputStream();
PdfWriter.getInstance(document,byOut);
document.open();
document.add(elements)://添加数据.
document.closed();
ActionContext context = ActionContext.getContext();
HttpServletResponse response = (HttpServletResponse)context.get(ServletActionContext.HTTP_RESPONSE);
response.setContentType("application/pdf");
response.setContentLength(byOut.size());
ServletOutputStream out = response.getOutputStream();
byout.writeTo(out);
return SUCCESS;
}
JSP:
在页面头<%@page %>中增加import="java.io.*,com.lowagie.text.*,com.lowagie.text.pdf.*"//itext
session = "false"
<%
Document document = new Document();
ByteArrayOutputStream byOut = new ByteArrayOutputStream();
PdfWriter.getInstance(document,byOut);
document.open();
document.add(elements);//添加数据
ServletOutputStream outs = response.getOutputStream();
DataOutput output = new DataOutputStream(outs);
byte[] bytes = buffer.toByteArray();
response.setContentLength(bytes.length);
for (int i = 0; i < bytes.length; i++) {
output.writeByte(bytes[i]);
}
out.clear(); //
out=pageContext.pushBody();//
%>
如果只需要下载后台生成的PDF文档,与正常的下载文件差不多。
将action中的:
ActionContext context = ActionContext.getContext();
HttpServletResponse response = (HttpServletResponse)context.get(ServletActionContext.HTTP_RESPONSE);
response.setContentType("application/pdf");
response.setContentLength(byOut.size());
ServletOutputStream out = response.getOutputStream();
byout.writeTo(out);
修改为 this.inputStream = new ByteArrayInputStream(byOut.toByteArray());//inputStream为下载文件时的文件流程。
生成文档基本为5个步骤。
1,初始化Document对象,:Document document = new Document();
2,配置PDF的输出流:PdfWriter.getInstance(document,FileOutputStream("fileName"));
3,打开Docuement对象:document.open();
4,添加数据进入document对象中:document.add(elements);
5,关闭document对象:document.closed();
官方文档中有itext与servlet的集成,是用户能够在页面中打开PDF文档,目前项目使用struts2,因此参照官方文档使用struts2实现。
action :
public String getPdf(){
Document document = new Document();
ByteArrayOutputStream byOut = new ByteArrayOutputStream();
PdfWriter.getInstance(document,byOut);
document.open();
document.add(elements)://添加数据.
document.closed();
ActionContext context = ActionContext.getContext();
HttpServletResponse response = (HttpServletResponse)context.get(ServletActionContext.HTTP_RESPONSE);
response.setContentType("application/pdf");
response.setContentLength(byOut.size());
ServletOutputStream out = response.getOutputStream();
byout.writeTo(out);
return SUCCESS;
}
JSP:
在页面头<%@page %>中增加import="java.io.*,com.lowagie.text.*,com.lowagie.text.pdf.*"//itext
session = "false"
<%
Document document = new Document();
ByteArrayOutputStream byOut = new ByteArrayOutputStream();
PdfWriter.getInstance(document,byOut);
document.open();
document.add(elements);//添加数据
ServletOutputStream outs = response.getOutputStream();
DataOutput output = new DataOutputStream(outs);
byte[] bytes = buffer.toByteArray();
response.setContentLength(bytes.length);
for (int i = 0; i < bytes.length; i++) {
output.writeByte(bytes[i]);
}
out.clear(); //
out=pageContext.pushBody();//
%>
如果只需要下载后台生成的PDF文档,与正常的下载文件差不多。
将action中的:
ActionContext context = ActionContext.getContext();
HttpServletResponse response = (HttpServletResponse)context.get(ServletActionContext.HTTP_RESPONSE);
response.setContentType("application/pdf");
response.setContentLength(byOut.size());
ServletOutputStream out = response.getOutputStream();
byout.writeTo(out);
修改为 this.inputStream = new ByteArrayInputStream(byOut.toByteArray());//inputStream为下载文件时的文件流程。
相关文章推荐
- 如何在使用itext生成pdf文档时给文档添加背景图片
- Itext 使用入门 之 创建pdf 文档 附中文解决方案
- 如何在使用itext生成pdf文档时给文档添加背景图片
- Itext 使用入门 之 创建pdf 文档 附中文解决方案
- Java iText使用PDF模板生成PDF文档
- iTEXT生成PDF文件使用方法 实例 示例 Servlet输出PDF文档方法
- 滴水穿石--Java 生成PDF文件--iText使用之入门
- iText使用入门,生成HelloWorld.PDF详解
- Java 使用 iText动态生成PDF文档
- java使用iText生成pdf文档的对齐方式
- 使用 iText动态生成PDF文档
- 使用iText生成pdf文档
- java-pdf-itext7、itextpdf 生成pdf 文档,使用pdf模板生成(支持中文字体)
- Itext 使用入门 之 创建pdf 文档 附中文解决方案
- iText+Flying Saucer生成pdf文档二:给pdf添加页脚
- 使用PHP生成PDF文档
- PHP中使用TCPDF生成PDF文档实例
- 在springmvc中使用itext生成pdf文件
- 使用java生成pdf文档
- 使用doxygen和CTEX生成pdf文档