如何删除mPdf中的空白页面

时间:2015-06-24 11:21:26

标签: php mpdf

我正在使用mPdf将html文件转换为PDF,但返回的PDF文件包含空白页面。我想删除那些空白页面。

3 个答案:

答案 0 :(得分:5)

遇到同样的问题并意识到我的CSS正在强制这些分页符。确保你的CSS中没有这个:

page-break-after: always;

答案 1 :(得分:0)

可能有很多原因:

1)确保元素没有不必要的边距,也没有Paddings

2)正确配置页面属性(特别是边距):

$page_orientation = 0;
$page_size = 'Letter';
$page_margins = array('LEFT(int)','RIGHT(int)','UP(int)','BOTTOM(int)');
$pdf_output = 'I';
$css_files = array(
    'path/file.css',
    'path/file_2.css',
);

$orientationPage = array('','-L');

/* ===== [ MPDF ] =====*/
$mpdf=new mPDF('utf-8', $page_size.$orientationPage[$page_orientation],'','',$page_margins[0],$page_margins[1],$page_margins[2],$page_margins[3]);

// Loading CSS

    for($i = 0; $i < count($css_files); $i++){
        $stylesheet = file_get_contents('../../'.$css_files[$i]);
        $mpdf->WriteHTML($stylesheet,1); // 1 para indicar que es CSS

    }

// Set header & Footer (This are variables with html code)
    $mpdf->SetHTMLHeader($header);
    $mpdf->SetHTMLFooter($footer);
    $mpdf->SetDisplayMode('fullpage');
    $mpdf->SetTitle($title);
    $mpdf->WriteHTML($html); // <-- insert HTML

// Create PDF
    $mpdf->Output($titulo.'.pdf',$pdf_output);

3)确保HTML上没有不必要的“分页符”

<pagebreak type="NEXT-ODD" resetpagenum="1" pagenumstyle="i" suppress="off" />

我希望它可以帮到你!

答案 2 :(得分:-1)

我遇到了同样的问题,我通过从代码

中删除AddPage属性来修复它

我更改了以下代码

    // Code with bug
    $mpdf = new mPDF('utf-8', array(380,500));
    $mpdf->WriteHTML($htmlContent);
    $mpdf->AddPage('P'); // It will add extra page - I that i removed this line
    $mpdf->Output();

进入这个

    // code after resolving the bug
    $mpdf = new mPDF('utf-8', array(380,500));
    $mpdf->WriteHTML($htmlContent);
    $mpdf->Output();