我尝试使用 replacePlaceHolderImage 函数替换文档中的图像。
我在我的文档中插入了一个图像,并将图像的 ALT TEXT 属性设置为“logo”,如 PHPDocX 文档中所述。
然后我试图通过写来替换它:
$docx->replacePlaceholderImage('logo','tmp/'.$filename);
但是什么也没发生,图像仍然是我的占位符图像..
我在这里做错了什么?
好吧,我做了更多研究并提出了解决方案。
首先,我创建了我的属性数组,以确保我插入的图像的宽度和高度设置为自动。
$logoProperties = array(
'height' => 'auto',
'width' => 'auto'
);
然后我调用 replacePlaceholderImage 如下:
$docx->replacePlaceholderImage('LOGO','tmp/'.$filename, $logoProperties);
请注意必须在用作模板的 docx 文档中为我的图像设置的“LOGO”变量。在Word2013中你需要选择占位符图像->右键单击->格式化图片->选择布局和属性->选择ALT TEXT并在“描述”字段中插入变量名。在我的示例中将其设置为 $LOGO$。
这也是我误读文档的地方,因为我设置了 Title 属性。
奇迹般有效..