PHPOffice/PHPWord - 如何设置横向纸张大小

问题描述

我确实关注了这篇文章How to change paper size in PHPWord

<?PHP

require_once 'vendor/autoload.PHP';

$PHPword = new \PHPOffice\PHPWord\PHPWord();

$paper = new \PHPOffice\PHPWord\Style\Paper();
$paper->setSize('Letter'); 

$section = $PHPword->addSection(array('pageSizeW' => $paper->getWidth(),'pageSizeH' => $paper->getHeight()));

$section->addText("Hello World!");

$PHPword->save('./test.docx','Word2007');

?>

它将创建带有信纸和纵向布局的文件

我改成这样:

$section = $PHPword->addSection(array('orientation' => 'landscape'));

生成文件采用横向布局,但为 A4 纸张大小。

如何生成Letter大小+横向布局的文件

谢谢!

解决方法

在具有宽度和高度的数组中插入方向键:

$section = $phpword->addSection(array(
    'pageSizeW' => $paper->getWidth(),'pageSizeH' => $paper->getHeight(),'orientation' => 'landscape'
));