使用itext实现打印pdf报表

itext:

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

步骤:

1.创建一个maven项目

2.添加pom依赖如下:

<dependencies>
    <dependency>
        <groupId>com.itextpdf</groupId>
        <artifactId>itextpdf</artifactId>
        <version>5.5.10</version>
    </dependency>

    <dependency>
        <groupId>com.itextpdf</groupId>
     <artifactId>itext-asian</artifactId>
         <version>5.2.0</version>
         </dependency>

    <dependency>
          <groupId>org.bouncycastle</groupId>
         <artifactId>bcprov-jdk15on</artifactId>
        <version>1.54</version>
    </dependency>

</dependencies>

3.创建工具类,添加方法实现静态获取不同的报表单元格样式,举例如下:

4.创建打印静态报表类:

   (1)创建文档对象,添加到输出流,并设置字体样式(这里使用的是windows系统自带的字体样式).

(2)创建表格,设置当前表格与上面元素的间距,并设置表格各列宽比例,添加表格中单元格内容和字体样式。这里是调用工具类获取不同样式的单元格。

 

(3)完成表格中单元格的添加之后,调用文档对象写入表格,同时添加表格标题,设置标题样式(对齐方式,左右间距数)。


4.完成静态报表之后运行main方法打印报表。看报表是否符合预期,不符合继续改。

5.最终需要根据静态内容报表类改为动态添加报表内容的类。有静态报表类的参考,就简单很多了。