我的问题是我想在 CakePhP 视图中呈现 pdf。
所以我有一些 html/php 的视图,并且在页面末尾我想呈现一些 pdf(我不想链接 pdf,真的需要在同一页面上呈现它们)。
如果您对如何做到这一点有任何想法,那就太好了:)
谢谢你。
您不能混合 HTML 和 PDF 并期望浏览器正确显示它,这是行不通的。您要么必须将 PDF 转换为 HTML,要么在 iframe 中显示 PDF。
要使后者正常工作,您通常需要发送一个Content-Disposition
type 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;
}
有关更多信息,请查看食谱。