我正在使用 TCPDF(最新版本 – 6.0.023)来生成 PDF。在文档的标题中,我显示了一个徽标(JPEG 或 PNG 格式)。事实证明,当使用“大”图像(> 30KB)时,TCPDF 会生成损坏的 PDF 文件。
这是显示图像的代码:
<?php
public function Header() {
// $this->headerLeftLogo = '@' . $image;
// $this->logoHeight = 8;
$type = (...some check...) ? 'JPEG' : 'PNG';
$this->Image($this->headerLeftLogo, $this->getX(), $this->getY(), 0, $this->logoHeight, $type);
}
?>
在检查生成的 PDF 的源代码并比较好的和损坏的 PDF 之后,看起来损坏的 PDF 文件只是在文档中间的某个地方结束。我在好的 PDF 末尾看到的一些(可读)信息在损坏的 PDF 中不存在。
生成 PDF 时不会出现任何错误。(所有 PHP 错误都已打开。)
运行 TCPDF 的示例 9(其中显示大图像)时,不会出现任何问题。