【问题标题】:Render view as landscape PDF in CakePHP在 CakePHP 中将视图渲染为横向 PDF
【发布时间】:2013-08-28 10:53:42
【问题描述】:
我希望将 CakePHP v2.3.6 中的某些视图呈现为提供给浏览器的可打印 PDF 文件。我试过插件
第一个更容易设置,没有给我任何错误,并且几乎完美地满足了我的需求。
问题是无论我使用什么设置,它们都不会以横向显示页面。
我确实设法使用the following guide 创建了一个使用 Mpdf 的横向 PDF 文件,但这种方法涉及在控制器中调用 WriteHTML 方法,这会导致代码混乱并破坏 MVC。我更喜欢以前的插件,因为它们将 .ctp 文件转换为更整洁的 PDF。
【问题讨论】:
标签:
cakephp
pdf
pdf-generation
dompdf
mpdf
【解决方案1】:
Dompdf 是一个用 CakePHP 生成 PDF 文件的好插件,但有时很难配置它以达到所需的确切结果。
确保在您的 $params 中呈现您的 PDF 并给出正确的 paperOrientation(如 here 解释的那样)或在 Dompdf 插件目录中修改:View/PdfView.php 的 render() 函数,并将默认的 paperOrientation 更改为风景。
【解决方案3】:
您好,您可以使用 mpdf 来渲染风景
// Define a Landscape page size/format by name
$mpdf=new mPDF('utf-8', 'A4-L');