PHP - DOMPDF 1功能有效,另一个没有

时间:2012-01-09 09:11:23

标签: php pdf pdf-generation dompdf html-generation

我目前正在使用DOMPDF,我试图弄清楚为什么我的PDF没有正确创建。

当我运行以下代码时,

<?php if (!defined('BASEPATH')) exit('No direct script access allowed');
function pdf_create($html, $filename, $stream=TRUE) 
{
    require_once("dompdf/dompdf_config.inc.php");

    $dompdf = new DOMPDF();
    $dompdf->set_base_path($_SERVER['DOCUMENT_ROOT']);
    $dompdf->output_html();
    //$dompdf->load_html($html);
    //$dompdf->set_paper("a4", "portrait" );
    //$dompdf->render();
    //$dompdf->stream($filename . ".pdf");
}
?>

在我的浏览器中,我看到了我希望生成的PDF内容,但是如果我运行此代码,

<?php if (!defined('BASEPATH')) exit('No direct script access allowed');
function pdf_create($html, $filename, $stream=TRUE) 
{
    require_once("dompdf/dompdf_config.inc.php");

    $dompdf = new DOMPDF();
    $dompdf->set_base_path($_SERVER['DOCUMENT_ROOT']);
    //$dompdf->output_html();
    $dompdf->load_html($html);
    $dompdf->set_paper("a4", "portrait" );
    $dompdf->render();
    $dompdf->stream($filename . ".pdf");
}
?>

我没有回复,我希望得到一个下载窗口。有没有理由这样做,我想知道格式不好的HTML是否会出现这个问题?

1 个答案:

答案 0 :(得分:0)

您的CI插件代码应该适用于1.7.x.以下是您的参考:

<?php if (!defined('BASEPATH')) exit('No direct script access allowed');

function pdf_create($html, $filename, $stream=true) {
        require_once("dompdf/dompdf_config.inc.php");
        spl_autoload_register('DOMPDF_autoload');
        $dompdf = new DOMPDF();
        $dompdf->load_html($html);
        $dompdf->render();
        if ($stream) {
                $dompdf->stream($filename);
        } else {
                $CI =& get_instance();
                $CI->load->helper('file');
                write_file($filename, $dompdf->output());
        }
}