新闻资讯 | 控件产品 | 技术文章 | 购物车 | 合作伙伴 | 问题解答 | 电子简报 | PDF论坛 | 资源下载
您现在的位置:技术文章>PDF开发篇 首页|PDF应用篇|PDF开发篇|解决方案

java itext html转pdf[续篇]

发布日期:2012-10-24 作者:wulei_longhe 出处:blog.csdn.net

原文地址:http://blog.csdn.net/wulei_longhe/article/details/8070665

之前利用itext进行html转pdf,实际使用中还是有些地方确实需要注意的,我所遇到的归纳以下几个问题:

1,中文的支持

2,html格式要求严格

3,pdf里面文字换行问题


第一个中文支持呢,我看就通过:

  1. ITextRenderer renderer = new ITextRenderer();
  2. ITextFontResolver font = renderer.getFontResolver();
  3. font.addFont("C:/WINDOWS/Fonts/simsun.ttc",
  4. BaseFont.IDENTITY_H, BaseFont.NOT_EMBEDDED);


就差不多了,其实有个疑问的,就一种字体?多添加几种字体都不行

这样加了还不行的,html文档里面还就只能设定这个字体,设了其他字体就不行了,这个比较郁闷。

这就还正好牵到第二个问题,html格式非常非常严格,有丁点的不对的地儿就报错,这个更郁闷。

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  3. <html xmlns="http://www.w3.org/1999/xhtml">
  4. <head>
  5. <style>
  6. body{
  7. font-family:SimSun;
  8. font-size:14px;
  9. }
  10. </style>
  11. <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"></meta>


贴出我html一段代码,下面拼下head,body就ok,注意一定要配对,这个html最上面还多了个xml定义,开始是遇到html.version错,一直没找到原因,就google了下,有用的消息不是很多,因为有的人不需要这个也没关系,但是我这就是错,查了官网,看到demo上面多了个xml定义,才copy过来看看,还真是这样的错,又一个郁闷的地儿。

至于第三个问题,哎呀妈呀,愣是被折磨了两天,想尽各种办法,没辙。。。。

google,baidu都没找到合理的解释,大家很少遇到这个原因,我想因为,大多数生成pdf应该是基于模板生成什么报表之类的,都是出来个表格之类的,没遇到输出大量文字信息,就比如下面一段html:

  1. <body>
  2. <table style="margin-top: 120px;table-layout:fixed; word-break:break-strict;">
  3. <tbody>
  4. <tr>
  5. <td>
  6. <b>新华社中国网事:【莫言:诺贝尔奖金将用来买房】巨额奖金怎么用?</b><br/>刚刚获得诺贝尔文学奖的莫言在接受新华社中国网事记者专访时笑着说:“我准备在北京买套房子,大房子,后来有人提醒我说也买不了多大的房子,5万多一平米,750万也就是120多平米。”
  7. </td>
  8. </tr>
  9. </tbody>
  10. </table>
  11. </body>


body中有个table,就一行文字,但是呢,一行非常长的文字,没有换行,这样输出的pdf就会把表格撑开,一行显示,pdf就显示不全这些文字,就是这个问题,把我搞死了,还好不断的摸索,尝试,google,终于网上有哥们给出解决办法,给出链接:【他解决问题还是蛮多的,顶起http://blog.csdn.net/shanliangliuxing/article/details/6833471】原来是itext源码问题,完全忽略咱强大的china的存在,他源码换行是按照空格换行,老外嘛,单词之间空格表示,咱中文不行啊,所以果断修改源码,感谢哥们提供下载,我试过了,没有问题的

这样用需要有CSS配合,上面table中

要加上。

 

发布人:管理员 【报告错误】·【推荐好友】·【打印文章】
相关评论 本文现有 0 条评论 评分人数: 0 平均分: 0
相关评论
用户名: 密  码:
说明:输入正确的用户名和密码才能参与评论。如果您不是本站会员,你可以注册为本站会员。
注意:文章中的链接、内容等需要修改的错误,请用报告错误,以利文档及时修改。
注意:请不要在评论中含与内容无关的广告链接,违者封ID
文章搜索
推荐文章
循序渐进学习iTextShar
循序渐进学习iTextShar
循序渐进学习iTextShar
循序渐进学习iTextShar
循序渐进学习iTextShar
循序渐进学习iTextShar
循序渐进学习iTextShar
循序渐进学习iTextShar
循序渐进学习iTextShar
循序渐进学习iTextShar
热门点击
一个简单的PDF文件结构的分析(22564)
PHP的FDF文档支持(16207)
用C#制作PDF文件全攻略(13652)
Word转换PDF格式的C#或(12165)
pdfMaker文章:PDF加(11658)
ITextRenderer学习(11367)
PDF文件加密仿真(11075)
怎样用iReport制作Web(10436)
iText PDF概述(1)(9955)
循序渐进学习iTextShar(9893)
热门评论
从pdf文档中提取出文本(8)
PDFlib开发:创建超文本元(2)
客户端自动打印PDF(Prin(2)
浅谈PDFlib中文输出(一)(2)
xml的转换之pdf 2 ((1)
xml的转换之pdf 1 (x(1)
PDF知识讲座(1)(1)
PDFBox使用简介(1)
使用正则表达式计算PDF文档的(1)
word转pdf(1)