Flying Saucer实现html转pdf(及一些问题,持续更新)
关于Flying Saucer的使用官网上有详细的介绍.
中国人在使用Flying Saucer将Html转换成PDF的过程中有如下问题:
l 中文不显示的问题
l <td>内容过长,转换成PDF后显示不全的问题
l 网上有大量文章给出的解决方案并不能解决问题
在研究如上的问题时,使用了2种类型的jar,第一种就是在官网上下载的jar如下图展示:
另一种是下载别人修改源码后的jar如下:
关于中文不显示的问题,总结下有如下3种解决方案:
l 自己修改源码,解决该问题:未知
l 使用别人修改后的源码解决该问题:这个最方便了,推荐一个人的博客大家去看看,地址是:http://blog.csdn.net/shanliangliuxing/article/details/6833471
l 使用网上疯传的添加字体:这个添加字体的思路是在代码端和需要转换的html中都需要添加字体.但是我都试验过了没有一个成功!都在报错.
总结下貌似直接使用修改后的源码才是最省事的,但是本人非常想把添加字体这种形式搞通,所以如果有人是用该形式成功了请一定要告诉我(cuiyaonan2000@163.com)
关于<td>内容过长不能显示全的问题的解决思路:
l 修改源码:未知
l 使用别人修改后的源码:目前没发现有可用的
l 关于添加样式解决的思路:试验过了完全不起作用.
总结:暂时没法搞定.
补充:关于中文字符过长换行的问题,不仅td存在,div也存在其它标签一样,并且在添加了width的限制后该问题依然存在.
补充:在http://gaojunwei.iteye.com/blog/1996749一文中提供了一中解决办法,中文显示使用的是添加字体的方式,经测试是可以的.关于中文换行我测试了table和div,结果是table就算加了width也不能解决换行问题,div到是不用加div就能自动换行.
相关推荐
不过,可以结合其他工具如Flying Saucer来实现HTML到PDF的转换。 2. **Flying Saucer**:这是一个开源的Java库,它能够将HTML、CSS和XHTML渲染成PDF。Flying Saucer使用了开源Web浏览器引擎Itext来完成转换,能够...
在Java中,有许多库可以帮助我们实现这个功能,如iText、 Flying Saucer 和 Apache PDFBox。这些库提供了API,可以解析HTML并将其转换为PDF文档。iText是一款强大的PDF处理库,而Flying Saucer则专门用于将HTML转换...
1. **HTML to PDF转换库**:Java中有很多库可以帮助我们完成这个任务,如iText、Flying Saucer、PDFBox等。其中,Flying Saucer是一个广泛使用的库,它能够将HTML、CSS和图片转换为高质量的PDF文档。iText则主要针对...
在`pom.xml`文件中,你可以找到所有必要的依赖,如Flying Saucer和IText,这两个库是实现HTML转图片的关键。 2. **Flying Saucer库**: Flying Saucer是一个开源库,能够将HTML、CSS渲染成PDF或图片。在这个项目中...
Flying Saucer是一个可以将HTML渲染为PDF的库,如果转换系统有将Word转为HTML然后再转为PDF的需求, Flying Saucer则会在此过程中提供支持。它可以解析HTML,然后按照指定的CSS样式生成高质量的PDF输出。 在实现这...
Apache POI用于处理Excel文件,iText或Flying Saucer处理PDF。 12. **测试**:单元测试和集成测试是保证系统质量的关键。JUnit和Mockito用于后端测试,而Selenium或Protractor则用于前端UI测试。 13. **持续集成/...
Java可以借助JFreeChart等库生成图表,而iText或Flying Saucer用于创建PDF格式的报表,便于打印和导出。 7. **单元测试与持续集成**:Java的JUnit和Mockito等工具用于编写单元测试,保证代码质量;而Jenkins、...