如何使用 Knp Snappy 包设置 pdf 的页面大小

问题描述

我有一个代码,用于使用带有 Symfony2 的 KNP Snappy 捆绑包生成 PDF。这是它的样子:

     $this->container->get('knp_snappy.pdf')->generateFromHtml(
          $this->templating->render(
             $twigInclude,array(,'htmlFiles' => $htmlFiles,'headlines' => $headlines,)
         ),$folderHistory . '/reports/' . $filename . '.pdf'
     );

我的问题是,我想设置边距并将页面大小从 A4 更改为 A1。我找到了很多例子,但每次尝试时,pdf 似乎不再生成。我该如何解决这个问题并使其发挥作用。

预先感谢您的帮助。

解决方法

您可以在选项中设置几个标志:

$options = [
  'page-size' => 'A1','margin-top' => 10,'margin-right' => 10,'margin-bottom' => 10,'margin-left' => 10,];

$this->container->get('knp_snappy.pdf')->generateFromHtml(
  $this->templating->render(
    $twigInclude,[
      'htmlFiles' => $htmlFiles,'headlines' => $headlines,]
  ),$folderHistory . '/reports/' . $filename . '.pdf',$options,true // this flag will overwrite existing file
);

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...