DOMPDF,能够创建pdf文档,但pdf本身无法加载

use*_*321 1 php pdf

嗨,我正在尝试使用PHP将html转换为pdf.代码能够运行,我能够运行它并下载pdf文件但是当我打开pdf文件时它给了我这个错误

在此输入图像描述

这是我运行php的代码

   <?
require_once("dompdf/dompdf_config.inc.php");

$html =
  '<html><body>'.
  '<p>Put your html here, or generate it with your favourite '.
  'templating system.</p>'.
  '</body></html>';

$dompdf = new DOMPDF();
$dompdf->load_html($html);
$dompdf->render();
$dompdf->stream("sample.pdf");



 ?>
Run Code Online (Sandbox Code Playgroud)

我有一种感觉,我正在加载HTML错误,所以pdf的内容实际上搞乱了,任何想法?

Mar*_*c B 9

   <?
^^^---- these spaces will corrupt the PDF
require_once("dompdf/dompdf_config.inc.php");
Run Code Online (Sandbox Code Playgroud)

如果你在PHP开始标记之前确实有这3个空格,它们将成为PDF文件的一部分并破坏它.加载你的"坏"pdf,做一个文件 - >保存,并在文本/十六进制编辑器(不是 PDF阅读器)中打开文件,看看你得到了什么.实际PDF数据之前的任何PHP错误/警告或其他输出都将导致PDF阅读器将其视为已损坏.


小智 9

ob_end_clean();调用前使用$dompdf->stream();

来源:/sf/answers/3102275361/