1

我的问题是我想在 CakePhP 视图中呈现 pdf。

所以我有一些 html/php 的视图,并且在页面末尾我想呈现一些 pdf(我不想链接 pdf,真的需要在同一页面上呈现它们)。

如果您对如何做到这一点有任何想法,那就太好了:)

谢谢你。

4

1 回答 1

5

您不能混合 HTML 和 PDF 并期望浏览器正确显示它,这是行不通的。您要么必须将 PDF 转换为 HTML,要么在 iframe 中显示 PDF。

要使后者正常工作,您通常需要发送一个Content-Dispositiontype inline,当然它需要一个原生支持 PDF 或安装了适当插件的浏览器。

这是一些基本的示例代码。在视图中:

<p>Some html</p>
<iframe width='123' height='456' src='/path/view_pdf'></iframe>

然后在链接的控制器动作中响应内联 PDF 数据,这在 Cake 2.x 中非常简单:

public function view_pdf()
{
    $this->response->file('/path/to/the/file.pdf');
    $this->response->header('Content-Disposition', 'inline');
    return $this->response;
}

有关更多信息,请查看食谱

于 2013-09-11T11:55:59.547 回答