如何在PHP中生成完美的div基础pdf?

时间:2012-08-01 06:59:35

标签: php pdf html

我从包含div的html生成pdf,Html在浏览器中正确呈现,但是当我将其写入pdf时,它会被损坏。

目前我正在使用dompdf库。

这是我的代码

require_once("dompdf_config.inc.php");

$html = '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
                    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
                    <head>
                    <style type="text/css">
                    div{border:solid 1px;}
                    .mainDiv{float:left;width:500px;}
                    .leftDiv{width:100px;float:left;}
                    .rightDiv{width:100px;float:left;}

                    </style>

                    <meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
                    </head>
                    <body style="margin-top: 50px;">
                    <div class="mainDiv">
                        <div class="leftDiv">Name: </div>
                        <div class="rightDiv">Value</div>
                    </div>

                    </body>
                    </html>';   


    $dompdf = new DOMPDF();

    $dompdf->load_html($html); 
    $dompdf->render();
    $dompdf->stream("test.pdf", array("Attachment" => true));               

这就是它在pdf文件中的样子   In Browser

1 个答案:

答案 0 :(得分:1)

您可以尝试 TCPDF 。它有很多功能。它将HTML完美呈现在页面中。此外,您应该使用 inline-CSS 而不是<style type="text/css">,并通过类或ID将其应用于元素。

以下是在TCPDF中使用CSS样式(不是内联)的示例;

PHP Code PDF Result