【问题标题】:I cannot open pdf in chrome created by Mpdf - CodeIgniter . - Failed to load PDF document我无法在由 Mpdf - CodeIgniter 创建的 chrome 中打开 pdf。 - 无法加载 PDF 文档
【发布时间】:2017-11-06 07:45:44
【问题描述】:

我是 PHP 报告生成的新手。我正在尝试使用 MPDF 5.7。当我尝试使用简单的 php 页面创建示例 pdf 时,它已成功创建。但是当我把它放到codeigniter chrome浏览器中时说“加载PDF文档失败。”。但它可以使用firefox打开。但是如果我下载了,不支持用adobe reader打开。但无论如何,我的示例 pfd 仍然运行良好。

这就是我创建示例 pdf 的方式。

<?php
$html = '
<h1>mPDF</h1>
<h2>Basic Example Using CSS Styles</h2>
<p class="breadcrumb">Chapter &raquo; Topic</p>
<h3 style="color:red; background-color:gray; margin-left:100px;">Heading 3</h3>';

include("themes/MPDF57/mpdf.php");
$mpdf=new mPDF('c');
$mpdf->SetDisplayMode('fullpage');
// LOAD a stylesheet
$stylesheet = file_get_contents('mpdfstyleA4.css');
$mpdf->WriteHTML($stylesheet,1);
$mpdf->WriteHTML($html);
$mpdf->Output();
exit;
?>

当我将它放入 codeigniter 时无法打开 pdf。我的 php 文件是在“view”中创建的,mpdf 库也放在主题文件夹中的相同位置。

【问题讨论】:

标签: php codeigniter mpdf


【解决方案1】:

您的 PDF 文件包含脚本的一些直接 PHP 输出,导致其损坏。

可以是?&gt; PHP结束标签后的空格,也可以是生成文件过程中打印的PHP通知等

确保禁用框架提供的所有布局,因为它会产生完全相同的输出,可能会导致这种情况。


要进一步排除故障,请将您的 PDF 文件保存到光盘 ($mpdf-&gt;Output('&lt;file path&gt;', "D");) 并在文本编辑器中打开它。你会看到一堆奇怪的字符。

如果文件不是以 %PDF-1.4 开头,请在调用$mpdf-&gt;Output(); 之前查找输出原因。

如果文档末尾有一些可读文本,请在调用Output 方法后查看。


我建议你删除你的?&gt; PHP 结束标签,以作为一个好的措施。

另见https://mpdf.github.io/troubleshooting/error-messages.html

【讨论】:

    【解决方案2】:

    发生这种情况的原因是在编写 PDF 之前出现了一些 PHP 错误/警告,这使其成为无效的 PDF,因此浏览器无法读取。

    您可以通过下载并使用文本编辑器打开 PDF 文件来查看它,您会看到 PHP 错误,而不是标准的 %PDF-1.4 值(应该是文件的第一个值)。

    如果你禁止警告 error_reporting(E_ERROR | E_PARSE); 你应该好好去。

    【讨论】:

      【解决方案3】:

      试试这个

      $mpdf->Output('', "I"); 
      

      所以文件应该在浏览器中内联显示而不是下载它。

      如果你想下载使用"D" insted of "I"

      【讨论】:

      • 我这样做了。但问题仍然没有解决:(
      • 检查您的文件保存路径可能不正确。请打印文件保存路径并检查
      【解决方案4】:

      我遇到了同样的问题,我没有注意到页眉和页脚(问题是页眉)仍然包含在我的索引文件中。当我调用我的 generate_pdf 文件时,它正在拉头并产生错误。在我删除标题pdf后成功生成。

      【讨论】:

        猜你喜欢
        • 2022-07-11
        • 2018-01-10
        • 1970-01-01
        • 2016-05-18
        • 2018-09-21
        • 2016-10-14
        • 1970-01-01
        • 2018-05-24
        • 1970-01-01
        相关资源
        最近更新 更多