怎样在Web应用中动态创建PDF文件(1)
在一个最近的后勤项目中,客户要求我们建一个能让用户能从一个遗留系统查询出货信息的Web站点,有三个主要的需求: 1.出货信息必须以PDF文档的格式返回; 2.PDF文件必须能通过浏览器下载; 3.PDF文件必须能用Adobe Acrobat Reader阅读; 尽管我们的团队有很多J2EE Web应用的开发经验,但在PDF文档处理上却没有多少经验。我们需要找一个能在服务器端Web应用里产生复杂的PDF文档的纯Java类库。最后,我们发现iText(http://www.lowagie.com/iText/)能完全满足我们的需要。 1.iText类库 iText是一个创建和处理PDF文档的开源纯Java类库。Bruno Lowagie和Paulo Soares领导着这个项目。IText API能让Java开发人员以编程的方式创建PDF文档。iText提供了很多的特性: 支持PDF和FDF文档 各种页面尺寸 横向和竖向布局 页边距 表格 断字 页头 页脚 页码 条形码 字体 颜色 文档加密 JPEG,GIF,PNG和WMF图片 有序和无序列表 阴影 水印 文档模板 iText是一个开源库。在写本文的时候,iText可以在两个许可协议下使用:Mozilla Public License和LGPL。如果想了解详细信息,请参考iText站点。在本文中,你将会看到iText API的应用。我们将阐述如何在服务器端应用中使用iText和servlet动态生成PDF文档。 2、开始(Getting Started) 首先,你需要一个iText Jar文件。访问iText站点并下载最新的版本。在写本文时,最新的版本是使0.99。iText站点提供了API文档和一个全面的指南。 除了iText,我们还要用servlet.如果你不熟悉servlet,你可以通过Jason Hunter的书《Java Servlet Programming》来学习它。你需要一个J2EE应用服务器或可以独立运行的servlet引擎。开源软件Tomcat,Jetty和Jboss是不错的选择。下文假设你使用的是Jakarta Tomcat 4.1。 1.iText API iText API简单易用。通过使用iText,你能创建自定义的PDF文档。iText库由下边的一些包组成: com.lowagie.servlets com.lowagie.text com.lowagie.text.html com.lowagie.text.markup com.lowagie.text.pdf com.lowagie.text.pdf.codec com.lowagie.text.pdf.hyphenation com.lowagie.text.pdf.wmf com.lowagie.text.rtf com.lowagie.text.xml com.lowagie.tools 为了生成PDF文件,你只需要com.lowagie.text和com.lowagie.text.pdf两个包。 我们的例子使用了这些iText类: com.lowagie.text.pdf.PdfWriter com.lowagie.text.Document com.lowagie.text.HeaderFooter com.lowagie.text.Paragraph com.lowagie.text.Phrase com.lowagie.text.Table com.lowagie.text.Cell 关键的类是Document和PdfWriter。在创建PDF文档时,你将经常使用这两个类。 Document是PDF文档基于对象的描述。你可以通过调用Document类提供的方法往文档中加入内容。PdfWriter对象通过java.io.OutputStream对象与Document关联在一起。
首页 上页 | 1 | 2 | 3 | 下页 尾页 共 3 页