0

我们正在使用 TinyButStrong 和 OpenTbs 从模板中准备 word (docx) 文档。我们基本上需要处理几个子模板(基于用户选择的内容),然后将所有子模板作为表格行合并到主模板中。

所以基本上我们需要这样的东西:

Final Template Table Row 1 - Output from docx1 template Row 2 - Output from docx2 template

行可能会有所不同,因此每个单独行的子模板文件也会有所不同。

TBS 似乎有一个 subtpl 标记,但是它不清楚它是如何占用参数的,尤其是当我们需要告诉它要使用哪个文件以及每个模板要绑定的参数时。

4

1 回答 1

0

由于 Ms Office 自动管理的内部元素(图片、图表、样式、编号等),合并两个 DOCX 文档(XLSX、PPTX 等)非常困难。

内部元素具有不同于 DOCX 和另一个 DOCX 的内部 ID,即使它们在视觉上完全相等。

因此,当您从第一个文档中获取一段内容时,其内部 Id 可能与您希望插入它的另一个文档不一致。出现此问题时,Ms Office 留言

我们很抱歉。我们无法打开 xxxxx.docx,因为我们发现其内容存在问题。

将外部代码片段从 DOCX 插入到另一个 DOCX 的唯一方法是确保代码片段中没有使用内部 IDS。这样的片段很难构建。

但是从文档中检索片段的技术很简单。请参阅GetBlockSource()

并将其插入另一个也很简单。请参阅源类型 = 'text' 的MergeBlock()

于 2018-09-20T12:50:22.437 回答