【问题标题】:OpenTBS/TinyButStrong Is Not Replacing Merge Fields In DOCXOpenTBS/TinyButStrong 不会替换 DOCX 中的合并字段
【发布时间】:2020-02-25 09:04:24
【问题描述】:

我正在尝试使用 OpenTBS/TinyButStrong 库来替换 word 文档中的合并字段。

我们可以像这样获取一个非常基本的word文档:

Hello, My Name Is Bob, My Age Is <<BOBAGE>>

word中的代码如下:

{MERGEFIELD BOBAGE\*MERGEFORMAT}

我的代码是基本的:

$TBS = new \clsTinyButStrong();
                            $TBS->PlugIn(TBS_INSTALL,OPENTBS_PLUGIN);
                            $TBS->LoadTemplate($path,OPENTBS_ALREADY_UTF8);
                            $TBS->MergeField('BOBAGE','TEST');
                            $TBS->Show(OPENTBS_FILE,$tmpPath . 'test.docx');

当我打开 test.docx 时,合并字段没有被替换!

如果我使用实际上不是单词合并字段的 [bobage] 就可以了!这不是我期望它做的,那是非常没用的。

有没有办法替换实际的单词合并字段?

【问题讨论】:

    标签: php opentbs tinybutstrong


    【解决方案1】:

    指令 ̀$TBS-&gt;MergeField() 用于合并 TBS 字段,而不是 Ms Word 邮件合并字段。

    TBS 字段是模板中的 [my_field][my_block.my_field] 之类的字段。

    因此,如果您的模板中有一段文本,例如 [BOBAGE],您的 sn-p 就可以工作。

    顺便说一下,如果类型是 IF 字段,OpenTBS 可以合并文档字段,但不能合并 MERGEFIELD。有关详细信息,请参阅documentation 和示例。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多