Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/261.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Wkhtmltopdf+;cakepdf-自定义页面大小_Php_Cakephp_Cakephp 3.0_Wkhtmltopdf - Fatal编程技术网

Php Wkhtmltopdf+;cakepdf-自定义页面大小

Php Wkhtmltopdf+;cakepdf-自定义页面大小,php,cakephp,cakephp-3.0,wkhtmltopdf,Php,Cakephp,Cakephp 3.0,Wkhtmltopdf,我不知道如何使用CakePDF和wkhtmltopdf启用自定义页面大小。我有以下配置代码: Configure::write('CakePdf', [ 'engine' => [ 'className' => 'CakePdf.WkHtmlToPdf', 'binary' => '/usr/local/bin/wkhtmltopdf', ], 'orientation' => 'portrait', 'pageSize' =>

我不知道如何使用CakePDF和wkhtmltopdf启用自定义页面大小。我有以下配置代码:

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

我想要150x150mm的页面。我已经尝试了一些方法,比如传递数组[150150],但也尝试了“150”或“150mm”之类的方法。这可能吗?

CakePDF
pageSize
选项映射到wkhtmltopdf的
pageSize
选项,该选项采用
QPrinter::PaperSize
常量名称,例如
A4
A5
B0
B1
Legal
字母
,等等。,即不能使用该选项定义自定义尺寸

如果需要自定义大小,则必须使用wkhtmltopdf特定的
页面宽度
页面高度
选项,默认情况下这两个选项都采用毫米值

引用wkhtmltopdf文档:

页面大小:

呈现文档的默认页面大小为A4,但使用 --页面大小选项此选项可以更改为几乎任何其他选项,例如:A3, 信和法律。有关支持的页面大小的完整列表,请参阅

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

另见

Configure::write('CakePdf', [
    'engine' => [
        'className' => 'CakePdf.WkHtmlToPdf',
        'binary' => '/usr/local/bin/wkhtmltopdf',
        'options' => [
            'page-width' => 150,
            'page-height' => 150
        ]
    ],
    'orientation' => 'portrait',
    'download' => true
]);