TCPDF - 图像只显示一次

时间:2013-04-18 10:19:10

标签: php image pdf tcpdf

我尝试使用TCPDF版本6.0.010生成多页pdf。 当我使用版本5.9.009时,您在下面看到的脚本工作得很好。

每个页面都有一个徽标。 TCPDF版本6.0.010生成的pdf仅显示此徽标一次(在第1页上)。 当我在这些页面上加载不同的图像时,图像会正确显示(只要没有重复)。

    $pdf = new TCPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false);
    $pdf->setPrintHeader(false);
    $pdf->setPrintFooter(false);
    $pdf->SetDefaultMonospacedFont(PDF_FONT_MONOSPACED);
    $pdf->SetMargins(PDF_MARGIN_LEFT, 10, PDF_MARGIN_RIGHT);
    $pdf->SetHeaderMargin(PDF_MARGIN_HEADER);
    $pdf->SetFooterMargin(PDF_MARGIN_FOOTER);
    $pdf->SetAutoPageBreak(TRUE, PDF_MARGIN_BOTTOM);
    $pdf->setImageScale(PDF_IMAGE_SCALE_RATIO);
    $pdf->SetFont('freesans', '', 18);
    foreach ($items as $item) {
        $pdf->AddPage();
        $html = myHtmlTemplate($item);
        $pdf->writeHTML($html, true, false, true, false, '');   
    }

    $file = $pdf->Output('myPDF.file', 'S');

2 个答案:

答案 0 :(得分:0)

我遇到同样的问题,我的工作是将图像作为base64图像字符串加载并使用它。

示例:

$img= "myimage.jpg";

$imgdata = 'data: '.mime_content_type($img).';base64,'. base64_encode(file_get_contents($img));

$html = "<img src=\"$imgdata\"/>";

这应该有所帮助,它不是一个修复,它有点慢,但它适用于我。 我相信这有帮助。

答案 1 :(得分:0)

或者获取最新版本的TCPDF ...我遇到了同样的问题并升级到6.0.093,现在它可以正常工作......