我的问题是我想在CakePhP视图中呈现pdf。
所以我有一些html / php视图,在页面的末尾我想渲染一些pdf(我不想链接pdf,真的需要在同一页面上渲染它们。)
如果您对如何做到这一点有任何想法,那将会很棒:)
谢谢。
答案 0 :(得分:5)
您无法混合使用HTML和PDF,并且希望浏览器能够正确显示它,这是行不通的。您必须将PDF转换为HTML,或在iframe中显示PDF。
对于后者工作,您通常需要发送Content-Disposition
类型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;
}
有关详细信息,请查看Cookbook。