使用dompdf库在PHPExcel中生成pdf文件

时间:2015-03-02 08:33:52

标签: php phpexcel

使用dompdf库生成pdf文件,而我打开它显示的pdf文件无法加载内容错误。我在下面设置了渲染器路径和渲染器库。

$ rendererName = PHPExcel_Settings :: PDF_RENDERER_DOMPDF; $ rendererLibrary ='dompdf.php'; $ rendererLibraryPath = name( FILE )。'/ .. / dompdf / libraries / dompdf /'.$ rendererLibrary;

2 个答案:

答案 0 :(得分:0)

试试这个

$rendererName = PHPExcel_Settings::PDF_RENDERER_DOMPDF;
$rendererLibrary = 'dompdf.php';
$rendererLibraryPath = dirname(__FILE__). 'libs/classes/dompdf' . $rendererLibrary;

根据此

更正您的PHP
$file = "path_to_file";
$fp = fopen($file, "r") ;

header("Cache-Control: maxage=1");
header("Pragma: public");
header("Content-type: application/pdf");
header("Content-Disposition: inline; filename=".$myFileName."");
header("Content-Description: PHP Generated Data");
header("Content-Transfer-Encoding: binary");
header('Content-Length:' . filesize($file));
ob_clean();
flush();
while (!feof($fp)) {
   $buff = fread($fp, 1024);
   print $buff;
}
exit;

答案 1 :(得分:0)

今天发生了类似的错误,但PHPExcel却没有。

我不得不用PHP填充PDF并在之后显示,但我总是得到一个"无法加载PDF文档"来自Chrome的错误。

我不知道它是否是同一个问题,但在我的情况下,PHP报告了通知和警告错误,没有什么太重要,但正因为如此,PDF无法加载。隐藏错误解决了我的问题!

TL; DR:在阅读文件之前,在PHP文件(快速和脏)或error_reporting(E_STRICT);之上尝试exit;,这样您就可以看到错误并修复它们。