0

我正在尝试使用 TCPDF 版本 6.0.010 生成多页 pdf。当我使用版本 5.9.009 时,您在下面看到的脚本运行良好。

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

    $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');
4

2 回答 2

1

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

例子:

$img= "myimage.jpg";

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

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

这应该有帮助,它不是一个修复程序,它有点慢,但它对我有用。我相信这会有所帮助。

于 2013-11-08T16:31:32.597 回答
-1

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

于 2014-09-15T21:54:24.490 回答