Wkhtmltopdf + cakepdf - 自定义页面大小

时间:2017-02-27 18:16:48

标签: php cakephp cakephp-3.0 wkhtmltopdf

我无法弄清楚如何使用CakePDF和wkhtmltopdf启用自定义页面大小。我有以下配置代码:

Configure::write('CakePdf', [
  'engine' => [
      'className' => 'CakePdf.WkHtmlToPdf',
      'binary' => '/usr/local/bin/wkhtmltopdf',
  ],
  'orientation' => 'portrait',
  'pageSize' => '', // this line
  'download' => true
]);

我想要150x150mm的页面。我已经尝试了几个例如传递数组[150,150]但还有'150 150'或'150mm 150mm'之类的东西。这甚至可能吗?

1 个答案:

答案 0 :(得分:1)

CakePDF textbox选项映射到wkhtmltopdf的pageSize选项,该选项采用page-size个常量名称,例如QPrinter::PaperSizeA4,{{ 1}},A5B0B1等,即您无法使用该选项定义自定义尺寸。

如果您需要自定义尺寸,则必须使用特定于wkhtmltopdf的LegalLetter选项,默认情况下均采用毫米值。

来自wkhtmltopdf文档的引用:

  

网页尺寸:

     

渲染文档的默认页面大小为A4,但使用此方法    --page-size选项,这可以更改为几乎任何其他选项,例如:A3,    信和法律。有关支持的页面大小的完整列表,请参阅    http://qt-project.org/doc/qt-4.8/qprinter.html#PaperSize-enum

     

对页面大小进行更细粒度的控制--page-height和     - 可以使用--page-width选项

page-width

另见