关于iText的一点分享

亭中人 2012-11-23 09:52:11
一个比较复杂,也可以说是变态的报表,用尽了主流的报表工具,最后选择了iText。

一直认为iText不算是真正意义的报表工具,算是一个PDF库(当然还好困了其它)

报表的要求:采用A3横向双面打印,打印之后中间对折装订,其实最终得到的是A4大小的装订报表

报表的动态内容浮动很大,少的8页,多的达20页。

内容里面有不同的字体要求、有的需要下划线、有的需要不同的颜色等等,这些不同要求的均可能是动态内容

内容里面还涉及多个复杂的表格

此前用过的诸多报表工具,模板的方式来写,根本无法很好的实现动态排版。

iText解决思路:

1、新建一个A4的Document,按照报表最终的A4装订的顺序就行内容添加(完全程序化编程);

2、获取A4版面的Document的页数,计算出A3纸张数量

3、新建一个A3的Document,根据A3的打印顺序,分别获取A4的每页内容,分别复制到的A3的半版页面上

4、最终输出A3的Document文档。

iText输出PDF不算高效,但是iText可以细粒度的控制文档中的每一个字符。

简单分享一下思路,代码就就不贴,超过千行。
...全文
108 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
sinat_27653797 2015-04-23
  • 打赏
  • 举报
回复
itext可以提取pdf目录吗?
liuguichuan666 2014-03-10
  • 打赏
  • 举报
回复
itext没有函数直接将A4改为A3吗?

81,091

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧