有没有办法将自动图文集(词汇表文档)存储在docx而不是dotx中



我需要用一些自动图文集(从数据库生成(制作word文件( 现在,我以编程方式为其生成word文档(docx(和模板(dotx(。Dotx 包含自动图文集列表(在词汇表中文档(,在 docx 文件中我在其上粘贴关系:

documentSettingPart1.AddExternalRelationship("http://schemas.openxmlformats.org/officeDocument/2006/relationships/attachedTemplate", new Uri($"file:./{Path.GetFileName(dotxTemplate)}", UriKind.Relative) , relationId);

因此,如果用户将两个文件保存在同一个目录中并打开docx,他可以完美地使用自动图文集。但是我正在寻找一种在一个docx文件中实现它的方法,因为用户拥有两个文件并确保它们位于同一目录中是不方便的。 我尝试在docx中添加GlossaryDocumentPart或更改文档类型(ChangeDocumentType(WordprocessingDocumentType.Document((,但之后我在打开的xml sdk中看到GlossaryDocument,但是当我在Word中打开docx文件时,此词汇表文档没有任何自动文本 有没有办法制作包含自动图文集的docx文件?

docx 文件不能包含自动图文集(构建基块(。它根本不受支持。但是,为什么不将要分发的文档另存为模板,以便用户可以在需要时使用它来创建新文档f?这就是模板的用途...

可以存储表示要在 (a( 自定义 XML 部件中重复使用的内容的 Word Open XML。您需要编写某种接口,以使用户能够检索和插入此内容。如果代码应该与文档一起旅行,那么作为 VBA - 然后它需要是一个文档而不是 docx 文件。

给定 Word 2013 或更高版本,还可以将内容控件映射/链接到自定义 XML 部件中的节点。但是,同样,这将要求您为用户开发某种界面。

也可能是VSTO或Word JS API解决方案,而不是VBA。

最新更新