好的,所以我正在使用PHPWord创建模板。然后使用函数setValue替换文档中的不同字符串,这一切正常,但是我的文档上有一个封面,并且此页面上的文本没有替换?
有没有办法添加这个功能,本质上,所有需要发生的只是替换(setValue)需要在对应于封面页(标题和资产)(自定义 xml 文件夹?)的 xml 上运行。您可以通过将文件扩展名更改为 .zip 后提取 .docx 文件来查看这些内容
https://github.com/PHPOffice/PHPWord/blob/master/src/PhpWord/Template.php
我目前如何从模板化的 .docx 文件创建 .docx:
<?php
include_once 'Sample_Header.php';
// New Word document
echo date('H:i:s') , " Create new PhpWord object" , EOL;
$phpWord = new \PhpOffice\PhpWord\PhpWord();
$document = $phpWord->loadTemplate('resources/Template_Proposal.docx');
$document->setValue('CONTACTNAME', 'John');
$document->setValue('BUSINESSNAME', 'JBS Marketing');
$document->setValue('WEBSITE', 'www.website.com.au');
$document->setValue('DATE', '07/07/2014');
$name = 'test-proposal.docx';
echo date('H:i:s'), " Write to Word2007 format", EOL;
$document->saveAs($name);
rename($name, "results/{$name}");
echo getEndingNotes(array('Word2007' => 'docx'));
if (!CLI) {
include_once 'Sample_Footer.php';
}