`

Flying Saucer实现html转pdf(一些问题,持续更新)

阅读更多

Flying Saucer实现htmlpdf(及一些问题,持续更新)

关于Flying Saucer的使用官网上有详细的介绍.

官网地址:https://today.java.net/pub/a/today/2007/06/26/generating-pdfs-with-flying-saucer-and-itext.html#the-problem-with-pdfs

 

中国人在使用Flying SaucerHtml转换成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就能自动换行.

 

 

 

 

 

 

 

  • 大小: 15.3 KB
  • 大小: 14.4 KB
2
7
分享到:
评论
9 楼 cuiyaoonan2000 2015-01-07  
高军威 写道
cuiyaoonan2000 写道
高军威 写道
或者 不用<td> 换别的标签元素实现,也不可吗

你好我下载了你的代码,并且经过测试,如果在table上添加了width也是不能支持换行的,但是div不用加width都可以自动换行

我的第一个贴图 就是这个问题,所以换其他元素或是生成html时,让它换行;或者在深究代码改写一下(  


目前你的方案最好了
8 楼 高军威 2015-01-07  
cuiyaoonan2000 写道
高军威 写道
或者 不用<td> 换别的标签元素实现,也不可吗

你好我下载了你的代码,并且经过测试,如果在table上添加了width也是不能支持换行的,但是div不用加width都可以自动换行

我的第一个贴图 就是这个问题,所以换其他元素或是生成html时,让它换行;或者在深究代码改写一下(  
7 楼 cuiyaoonan2000 2015-01-07  
高军威 写道
或者 不用<td> 换别的标签元素实现,也不可吗

你好我下载了你的代码,并且经过测试,如果在table上添加了width也是不能支持换行的,但是div不用加width都可以自动换行
6 楼 高军威 2015-01-07  
cuiyaoonan2000 写道
高军威 写道
我使用 iText,你可以试试这个

你好,我看了下你的博客关于转成pdf 的文章,其中我下载了你的jar并且按照<<3.html静态文件生成pdf>> 这个例子做了下结果不显示中文.我想是因为没有在页面中加入对应的字体.不知道你页面是怎么写的. 还有就是Flying Saucer其实基于itext的.对比支持css要好,

需要安装字体,引用字体
http://yunpan.cn/cyqTTzpFwMURV  提取码 cd56 这是一个DEMO,Flying Saucer没用过改天瞧瞧
5 楼 cuiyaoonan2000 2015-01-07  
高军威 写道
我使用 iText,你可以试试这个

你好,我看了下你的博客关于转成pdf 的文章,其中我下载了你的jar并且按照<<3.html静态文件生成pdf>> 这个例子做了下结果不显示中文.我想是因为没有在页面中加入对应的字体.不知道你页面是怎么写的. 还有就是Flying Saucer其实基于itext的.对比支持css要好,
4 楼 高军威 2015-01-07  
我使用 iText,你可以试试这个
3 楼 高军威 2015-01-07  
cuiyaoonan2000 写道
高军威 写道
或者 不用<td> 换别的标签元素实现,也不可吗


补充:关于中文字符过长换行的问题,不仅td存在,div也存在其它标签一样,并且在添加了width的限制后该问题依然存在.




2 楼 高军威 2015-01-06  
或者 不用<td> 换别的标签元素实现,也不可吗
1 楼 高军威 2015-01-06  
这种情况吧

相关推荐

    flyingsaucer转html为PDF(中文可用)

    `Flyingsaucer`的核心组件是`ITextRenderer`,它基于iText库来实现PDF生成。以下是如何使用`Flyingsaucer`将包含中文的HTML转换为PDF的步骤: 1. **添加依赖**:首先,你需要在项目中引入`Flyingsaucer`和`iText`的...

    SpringBoot集成Freemarker+FlyingSaucer实现pdf在线预览.pdf

    SpringBoot集成Freemarker+FlyingSaucer实现pdf在线预览 本文讲述如何使用SpringBoot集成Freemarker和FlyingSaucer实现PDF在线预览、打印和下载的功能。该技术方案可以应用于各种在线文档预览、报表生成、电子邮件...

    flyingsaucer html转pdf demo

    【飞驰碟片(Flyingsaucer):HTML到PDF转换神器】 在信息化时代,PDF文档因其便携性、跨平台兼容性和稳定的显示效果而受到广泛欢迎。在开发过程中,我们有时需要将网页内容或者HTML格式的数据转换为PDF格式,以...

    flying-saucer-pdf 生成pdf解决图片问题 解决中文问题

    本文将详细探讨`flying-saucer-pdf`如何解决图片问题以及中文显示问题。 首先,让我们关注一下图片问题。在HTML到PDF的转换过程中,图片的处理是个常见挑战。`flying-saucer-pdf` 支持多种图片格式,如JPEG、PNG、...

    flying-saucer生成pdf

    flying-saucer是一个非常实用的开源库,它允许开发者通过HTML和CSS将网页内容转换为PDF格式,从而解决了多种问题。以下是对这个主题的详细解释。 1. **图片显示问题**: 在使用flying-saucer生成PDF时,可能会遇到...

    用flying saucer将html生成pdf的例子

    【flying saucer】是一个开源项目,主要用于将HTML文档转换为PDF、PostScript或SVG等格式,以便于打印或者分发。它支持多种CSS样式,能够很好地保持HTML页面的原始布局和设计。在Web开发中,这个工具尤其有用,因为...

    flying-saucer-pdf-9.0.9转pdf相关包

    标题中的“flying-saucer-pdf-9.0.9转pdf相关包”指的是使用`flying-saucer`库的特定版本9.0.9来将HTML转换为PDF的工具集。 1. **flying-saucer-pdf-9.0.9.jar**:这是`flying-saucer`的核心组件,负责将HTML渲染成...

    使用 itext、flying-saucer 实现html转PDF

    ITextRenderer renderer = new ITextRenderer(); ITextFontResolver fontResolver = renderer.getFontResolver()...String htmlstr = "你的HTML字符串"; renderer.setDocumentFromString(htmlstr); renderer.layout();

    flying saucer的中文不显示问题(修改源码后重新打的jar包)

    在IT行业中,Flying Saucer是一个非常流行的库,它允许开发者将HTML内容转换为PDF、XPS等格式。这个库通常与iText一起使用,iText是一个强大的PDF处理库。当我们遇到"Flying Saucer的中文不显示问题"时,这通常是...

    基于iText和flying saucer结合freemark生成pdf 范例

    基于iText和flying saucer结合freemark生成pdf 范例 1. 使用maven构建,不含jar包,可以自行使用maven下载依赖包, 2. 使用前需要将C:/Windows/Fonts/ARIALUNI.TTF 复制到doc-render/src/test/resources/config/fonts...

    flyingsaucer指导文档

    - **定义**: FlyingSaucer是一个用于渲染XML文档的开源项目,主要通过应用CSS样式来实现对文档内容的格式化。 - **作用**: 它可以将XML文档转换为适合屏幕显示(如在浏览器中查看)或打印输出(如生成PDF文件)的...

    Flying-Saucer使用HTML或者FTL(Freemarker模板)生成PDF

    Flying-Saucer通过html生成pdf。。。项目中已经附带了jar包,放到项目中就可以运行了。亲测了,解决了中文不显示或者样式的问题,感觉蛮实用的。网上找了很久和下载其他资源用了好多积分,如果有需要的就下载吧!!...

    flying-saucer-coreR 解决PDF中文没对齐问题

    flying-saucer-coreR-9.0.7 中修改Breaker类,解决PDF中文没有对齐问题。

    flying-saucer jar包下载

    "Flying-Saucer"是一个开源Java库,主要用于将HTML内容转换为PDF格式,方便进行电子文档的生成和分发。这个库包含了多个组件,每个组件都有特定的功能,以协同完成HTML到PDF的转换过程。在提供的信息中,我们提到了...

    flyingSaucer.jar

    `flyingSaucer.jar` 是一个用于将HTML文档转换为PDF格式的开源库,它在处理中文内容时能够有效避免乱码问题。这个库在IT领域,特别是文档处理和自动化报告生成方面有着广泛的应用。下面我们将深入探讨 `flyingSaucer...

    Flying Saucer ,简单实用的pdf转换api

    Flying Saucer是一个开源Java库,专门用于将HTML文档转换为PDF格式。这个API因其易于使用和功能强大而受到开发者的欢迎。在本文中,我们将深入探讨Flying Saucer的核心概念、工作原理以及如何在实际项目中应用它。 ...

    利用flying saucer 生成Pdf的例子

    本实例将深入探讨如何利用Flying Saucer生成PDF,并解决其中遇到的中文显示问题。 首先,Flying Saucer基于IText库,IText是一款强大的PDF处理工具,它提供了丰富的API用于创建、修改和处理PDF文档。Flying Saucer...

Global site tag (gtag.js) - Google Analytics