用的html2pdf的工具类,在阿帕奇,php5.3的环境中生成的html怎么都不换行,截图中可以看出过长的内容被后边的单元格覆盖了,但是却不换行。
而且还有居中的问题,我所有能想到的居中的方法都用了,但就是在写入pdf后无法实现居中的效果,真心很纠结,求高人,大神指点迷津啊。

解决方案 »

  1.   

    下面是要生成pdf用的html页的代码<html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <title>Nations and Flags</title>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    <style type="text/css">
    .div1{}
    </style>
    </head>
    <body>
    <hr><b>web&nbsp;ray</b>
    <table border="1"><tr><b>
    <td width="60" bgcolor="#DDDDDD">产品名称打飞机快递费将开始将大佛为结     婚SD卡金粉世家开朗大,方就开始大坏蛋房价高</td>
    <td width="60" bgcolor="#DDDDDD">产品编号</td>
    <td width="60" bgcolor="#DDDDDD">产品状态</td>
    <td width="60" bgcolor="#DDDDDD">产品类型</td>
    <td width="60" bgcolor="#DDDDDD">网站</td>
    <td width="60" bgcolor="#DDDDDD">厂商</td>
    <td width="60" bgcolor="#DDDDDD">什么意思</td>
    </b></tr><tr>
    <td width="60">我的产品测试</td>
    <td width="60">Prod-001</td>
    <td width="60">可销售</td>
    <td width="60">办公软件</td>
    <td width="60">http://blog.csdn.net/xvhaijun/</td>
    <td width="60">1</td>
    <td width="60">2</td>
    </tr><tr>
    <td width="60">我的产品测试</td>
    <td width="60">Prod-001</td>
    <td width="60">可销售</td>
    <td width="60">办公软件</td>
    <td width="60">http://blog.csdn.net/xvhaijun/</td>
    <td width="60">1</td>
    <td width="60">2</td>
    </tr>
    <tr>
    <td width="60">我的产品测试</td>
    <td width="60">Prod-001</td>
    <td width="60">可销售</td>
    <td width="60">办公软件</td>
    <td width="60">http://blog.csdn.net/xvhaijun/</td>
    <td width="60">1</td>
    <td width="60">2</td>
    </tr>
    <tr>
    <td width="60">我的产品测试</td>
    <td width="60">Prod-001</td>
    <td width="60">可销售</td>
    <td width="60">办公软件</td>
    <td width="60">http://blog.csdn.net/xvhaijun/</td>
    <td width="60">1</td>
    <td width="60">2</td>
    </tr>
    <tr>
    <td width="60">我的产品测试</td>
    <td width="60">Prod-001</td>
    <td width="60">可销售</td>
    <td width="60">办公软件</td>
    <td width="60">http://blog.csdn.net/xvhaijun/</td>
    <td width="60">1</td>
    <td width="60">2</td>
    </tr>
    <tr>
    <td width="60">我的产品测试</td>
    <td width="60">Prod-001</td>
    <td width="60">可销售</td>
    <td width="60">办公软件</td>
    <td width="60">http://blog.csdn.net/xvhaijun/</td>
    <td width="60">1</td>
    <td width="60">2</td>
    </tr>
    <tr>
    <td width="60">我的产品测试</td>
    <td width="60">Prod-001</td>
    <td width="60">可销售</td>
    <td width="60">办公软件</td>
    <td width="60">http://blog.csdn.net/xvhaijun/</td>
    <td width="60">1</td>
    <td width="60">2</td>
    </tr>
    <tr>
    <td width="60">我的产品测试</td>
    <td width="60">Prod-001</td>
    <td width="60">可销售</td>
    <td width="60">办公软件</td>
    <td width="60">http://blog.csdn.net/xvhaijun/</td>
    <td width="60">1</td>
    <td width="60">2</td>
    </tr>
    <tr>
    <td width="60">我的产品测试</td>
    <td width="60">Prod-001</td>
    <td width="60">可销售</td>
    <td width="60">办公软件</td>
    <td width="60">http://blog.csdn.net/xvhaijun/</td>
    <td width="60">1</td>
    <td width="60">2</td>
    </tr>
    <tr>
    <td width="60">我的产品测试</td>
    <td width="60">Prod-001</td>
    <td width="60">可销售</td>
    <td width="60">办公软件</td>
    <td width="60">http://blog.csdn.net/xvhaijun/</td>
    <td width="60">1</td>
    <td width="60">2</td>
    </tr>
    <tr>
    <td width="60">我的产品测试</td>
    <td width="60">Prod-001</td>
    <td width="60">可销售</td>
    <td width="60">办公软件</td>
    <td width="60">http://blog.csdn.net/xvhaijun/</td>
    <td width="60">1</td>
    <td width="60">2</td>
    </tr>
    </table>
    <p>wo x
    </p>
    <table border="1px"><tr><td>woxxx</td><td>gogogo</td></tr></table>
    <img src="25.jpg" height="100px" width="300px"/>
    <div class="div1">come on</div>
    <img src="25.jpg" height="100px" width="300px"/>
    <img src="logo.jpg" alt="log"/>北京远江盛邦信息技术有限公司
    <hr size="+2"/>
    <br />
    </body>
    </html>下面是生成pdf的方法
    <?
    require('html2fpdf.php');
    $pdf=new HTML2FPDF();
    $pdf->AddGBFont('GB','仿宋_GB2312');// $pdf->SetFontSize(20);
    $pdf->AddPage('A4');
    $fp = fopen("sample.html","r");
    $strContent = fread($fp, filesize("sample.html"));
    fclose($fp);
    // $strContent = '';$pdf->WriteHTML(iconv("UTF-8","gbk",$strContent));$pdf->Close();
    $pdf->Output("msj".time().".pdf",'F');
    echo "PDF file is generated successfully!";
    ?>
      

  2.   

    http://download.csdn.net/detail/silinhongye456/7577767
      

  3.   

    资源是这个,望大神帮忙啊。
    http://download.csdn.net/detail/silinhongye456/7577767
      

  4.   

    你的 html2fpdf 是否太旧了,记得前几年有个解决中文不换行的补丁
    其实人工加个 <br> 简单又可靠,自动换行时断点不确定,影响美观关于不居中的问题,应该是你自己造成的。你#1的 html 没有一处居中属性(content),就是在浏览器中也是不会居中的
      

  5.   

    加了<center></center>也是不能居中的,上面发的链接就是代码包,大神可以试下,根本没办法居中,至于手动加<br> 对于我这问题的要求是,生成的PDF里的内容是要会员用户自己用编辑器添加进来的。服务端不能一个一个处理会员发过来的内容,所以真心求解,我找下这个补丁,看找不找得到。