`

使用Java组件itext 生成pdf的介绍

    博客分类:
  • Java
阅读更多

使用Java组件itext 生成pdf的介绍

  iText是一个能够快速产生PDF文件的java类库。iTextjava类对于那些要产生包含文本,表格,图形的只读文档是很有用的。它的类库尤其与java Servlet有很好的给合。使用iTextPDF能够使你正确的控制Servlet的输出。

  一、前言

  在企业的信息系统中,报表处理一直占比较重要的作用,Java组件——iText可以非常快速的生成PDF报表。iText是着名的开放源码的站点sourceforge一个项目,是用于生成PDF文档的一个java类库。通过iText不仅可以生成PDFrtf的文档,而且可以将XMLHtml文件转化为PDF文件。通过在服务器端使用JspJavaBean生成PDF报表,客户端采用超级连接显示或下载得到生成的报表,这样就很好的解决了B/S系统的报表处理问题了。

  二、iText简介

  iText是着名的开放源码的站点sourceforge一个项目,是用于生成PDF文档的一个java类库。通过iText不仅可以生成PDFrtf的文档,而且可以将XMLHtml文件转化为PDF文件。

  iText的安装非常方便,在http://www.lowagie.com/iText/download.html - download 网站上下载iText.jar文件后,只需要在系统的CLASSPATH中加入iText.jar的路径,在程序中就可以使用iText类库了。

  三、建立第一个PDF文档

  用iText生成PDF文档需要5个步骤:

建立com.lowagie.text.Document对象的实例。
Document document =
new Document();
建立一个书写器(Writer)document对象关联,通过书写器(Writer)可以将文档写入到磁盘中。
PDFWriter.getInstance(document,
new FileOutputStream("Helloworld.PDF"));
打开文档。
document.open();
向文档中添加内容。
document.add(
new Paragraph("Hello World"));
关闭文档。
document.close();

  通过上面的5个步骤,就能产生一个Helloworld.PDF的文件,文件内容为"Hello World"

  建立com.lowagie.text.Document对象的实例

com.lowagie.text.Document对象的构建函数有三个,分别是:
public Document();
public Document(Rectangle pageSize);
public Document(Rectangle pageSize,
int marginLeft,
int marginRight,
int marginTop,
int marginBottom);

   构建函数的参数pageSize是文档页面的大小,对于第一个构建函数,页面的大小为A4,同Document(PageSize.A4)的效果一样;对于第三个构建函数,参数marginLeftmarginRightmarginTopmarginBottom分别为左、右、上、下的页边距。

  通过参数pageSize可以设定页面大小、面背景色、以及页面横向/纵向等属性。iText定义了A0-A10ALLETTER HALFLETTER_11x17LEDGERNOTEB0-B5ARCH_A-ARCH_EFLSA FLSE等纸张类型,也可以通过Rectangle pageSize = new Rectangle(144, 720);自定义纸张。通过Rectangle方法rotate()可以将页面设置成横向。

  书写器(Writer)对象

  一旦文档(document)对象建立好之后,需要建立一个或多个书写器(Writer)对象与之关联。通过书写器(Writer)对象可以将具体文档存盘成需要的格式,如com.lowagie.text.PDF.PDFWriter可以将文档存成PDF文件, com.lowagie.text.html.HtmlWriter可以将文档存成html文件。

  设定文档属性

  在文档打开之前,可以设定文档的标题、主题、作者、关键字、装订方式、创建者、生产者、创建日期等属性,调用的方法分别是:

public boolean addTitle(String title)
public boolean addSubject(String subject)
public boolean addKeywords(String keywords)
public boolean addAuthor(String author)
public boolean addCreator(String creator)
public boolean addProducer()
public boolean addCreationDate()
public boolean addHeader(String name, String content)

     其中方法addHeader对于PDF文档无效,addHeader仅对html文档有效,用于添加文档的头信息。

  当新的页面产生之前,可以设定页面的大小、书签、脚注(HeaderFooter)等信息,调用的方法是:

public boolean setPageSize(Rectangle pageSize)
public boolean add(Watermark watermark)
public void removeWatermark()
public void setHeader(HeaderFooter header)
public void resetHeader()
public void setFooter(HeaderFooter footer)
public void resetFooter()
public void resetPageCount()
public void setPageCount(int pageN)

     如果要设定第一页的页面属性,这些方法必须在文档打开之前调用。

  对于PDF文档,iText还提供了文档的显示属性,通过调用书写器的setViewerPreferences方法可以控制文档打开时Acrobat Reader的显示属性,如是否单页显示、是否全屏显示、是否隐藏状态条等属性。

  另外,iText也提供了对PDF文件的安全保护,通过书写器(Writer)setEncryption方法,可以设定文档的用户口令、只读、可打印等属性。

  添加文档内容

  所有向文档添加的内容都是以对象为单位的,如PhraseParagraphTableGraphic对象等。比较常用的是段落(Paragraph)对象,用于向文档中添加一段文字。

 

分享到:
评论
1 楼 GRACEACT 2012-07-09  
Thanks.对我很有帮助。

相关推荐

    使用Java组件itext生成pdf介绍.docx

    iText是一个能够快速产生PDF文件的java类库。iText的java类对于那些要产生包含文本,表格,图形的只读文档是很有用的。它的类库尤其与java Servlet有很好的给合。使用iText与PDF能够使你正确的控制Servlet的输出。

    使用iText生成PDF.doc

    此文档主要讲述了使用Java组件iText来生成PDF,操作PDF

    java 基于iText的PDF输出(源码)

    组件方法调用: addTempl(String templKey,String templFileName),注册一个模板文件; addText(String templKey,String key,String text), 向模板中一个表单域添加一个文本数据; addImage(String templKey,...

    itext文档组件,生成PDF

    创建PDF文件,可由HTML代码生成PDF文件

    Java动态生成PDF格式报表

    在企业的信息系统中,报表处理一直占比较重要的作用,这里介绍一种生成PDF报表的Java组件--iText。通过在服务器端使用Jsp或 JavaBean生成PDF报表,客户端采用超级连接显示或下载得到生成的报表,这样就很好的解决了B...

    iText使用简单介绍

    iText使用简单介绍. 本文将介绍一种生成PDF报表的Java组件--iText!

    PDF iText 使用简单介绍

    本文将介绍一种生成PDF报表的Java组件--iText。通过在服务器端使用Jsp或JavaBean生成PDF报表,客户端采用超级连接显示或下载得到生成的报表,这样就很好的解决了B/S系统的报表处理问题。

    iText7 原生方法制作带斜线表格

    iText7 原生方法制作带斜线表格

    Itext.jar+itextpdf.jar

    一种生成PDF报表的Java组件--iText

    根据csv模板生成pdf

    JAVA生成PDF,最常见的是采用itext组件来动态构建PDF文件,这里,我主要介绍的是采用jasperreport模版来定制生成PDF。

    PDF iText操作简介

    PDF iText 使用简单介绍,一种生成PDF报表的Java组件--iText

    itext制作pdf

    在企业的信息系统中,报表处理一直占比较重要的作用,本文将介绍一种生成PDF报表的Java组件--iText。通过在服务器端使用Jsp 或JavaBean生成PDF报表,客户端采用超级连接显示或下载得到生成的报表,这样就很好的解决...

    iText和支持中文的jar包

    生成PDF报表的Java组件,包含处理中文的问题

    【批量下载】itextpdf-5.5.9等.zip

    在企业的信息系统中,报表处理一直占比较重要的作用,iText是一种生成PDF报表的Java组件。通过在服务器端使用Jsp或JavaBean生成PDF报表,客户端采用超链接显示或下载得到生成的报表,这样就很好的解决了B/S系统的...

    itext api 5.35

    在企业的信息系统中,报表处理一直占比较重要的作用,本文将介绍一种生成PDF报表的Java组件--iText。通过在服务器端使用Jsp或JavaBean生成PDF报表,客户端采用超链接显示或下载得到生成的报表,这样就很好的解决了B/...

    生成 PDF 文档的 C# 组件

    iTextSharp 是用来生成 PDF 文档的 C# 组件,相当于 Java 版的 iText。

    itext3 开发包

    在企业的信息系统中,报表处理一直占比较重要的作用,本文将介绍一种生成PDF报表的Java组件--iText。通过在服务器端使用Jsp或JavaBean生成PDF报表,客户端采用超链接显示或下载得到生成的报表,这样就很好的解决了B/...

    Itext 文档

    在企业的信息系统中,报表处理一直占比较重要的作用,本文将介绍一种生成PDF报表的Java组件--iText。iText是著名的开放源码的站点sourceforge一个项目,是用于生成PDF文档的一个java类库。通过iText不仅可以生成PDF...

    itext介绍和适用案例讲解

    本章将介绍一种生成PDF报表的Java组件——iText。通过在服务器端使用JSP或JavaBean生成PDF报表,客户端采用超级链接显示或下载得到生成的报表,这样就很好地解决了B/S系统的报表处理问题。本章的主要内容为iText组件...

    Java实现HTML页面转PDF解决方案

    而目前开源的组件中,Itext的确是一个First Choice,如果各位单纯是做把图片转成PDF或者自己写了Velocity或者FreeMarker模板生成了HTML是非常推荐直接用Itext来进行的。而如果,大家像我这样已经有前人写好了HTML...

Global site tag (gtag.js) - Google Analytics