问题标签 [wordprocessingml]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1236 浏览

c# - 无法使用 WordprocessingDocument 在 SdtElement 中设置内容

我有一个模板文件,其中放置了两个占位符。两者都是纯文本内容控件。我有以下代码,我在其中将值设置为文件中的占位符。

代码成功运行,但更改未反映在文件中。

我错过了什么?

0 投票
1 回答
419 浏览

c# - 如何使用 xmlDocument 检查文档的某些属性是否存在

所以我试图检查一个文档是否具有某些属性。例如,我有一篇硕士论文样本,我必须检查的一件事是标题是否以标题页为中心。到目前为止,我已经创建了 docx 文件的 xmlDocument 对象,因此我可以访问它的 Xml。代码是

我的问题是:访问文档的 xml 并找出文档是否具有我要查找的属性的最有效方法是什么?我是将 xml 转换为字符串并使用正则表达式还是做其他更有效的事情?我的代码在 C# 中。任何帮助,将不胜感激。

0 投票
0 回答
755 浏览

python - 如何使用 python 在 Word 2013 文档中创建书签?

在过去的几天里,我一直在尝试通过其 .xml 文件来操作 MS Word 文档。主要思想是使用 Python 将书签控件插入到现有文档中。我知道有一个名为 Docx 的库已经为 MS Word 提供了一些功能,但它不能满足我的需要(至少现在还没有),所以我正在使用 lxml 库。这是在 word xml 文件中表示书签的方式:

在其他帖子中进行了一些研究后,我有以下代码:

我想强调一下,这段代码的一些内容不是我创建的,而是我在互联网上找到的函数的汇编。

基本上,它解压缩 word 文件并将其 document.xml 文件保存为字符串,然后将该字符串作为树格式导入。所以,我想做的是:

一个。将新书签插入现有 xml 代码

湾。显示书签中的内容(即相同id号的bookmarkStart和bookmarkEnd之间的内容)

谢谢,大卫

0 投票
1 回答
201 浏览

xml - 使用 XSLT 样式表将 Docbook XML 列表转换为 WordML

我有以下要翻译为 WordML 的 XML:

到目前为止,这是我的 XSLT 1.0 样式表模板:

但是这个

  1. 不适用于嵌套列表。
  2. 对于有序列表的每个列表项,列表的 ID ("position()") 应该相同。

有人可以帮帮我吗?尤其是嵌套列表部分。

见:http: //xsltransform.net/jyH9rN8

预期输出:

0 投票
1 回答
1607 浏览

ms-word - 如何将带有项目符号的 OpenXml 列表段落添加到内容控件?

我使用 Word 2013 .docx 作为在 openxml 代码中打开的模板,填充内容控件,然后将其保存,下载给用户,这部分工作正常。

在一个内容控件中,目标是添加项目符号列表。问题来自尝试附加或替换从方法生成的新段落。此方法工作正常,我将变量发送给它,它返回一个带有项目符号的段落。它插入,但它破坏了doc这个词;

下图是template.docx(上)和resulting.docx(下)只有下段不同,multiline=1后空白区域;其余部分相同。如果我删除运行元素,保存,尝试,我可以打开单词 doc 并在那里查看格式化的项目符号列表,以便该部分“有效”,但错误是什么?

文档一词:

和生成的文件:

运行的代码,word doc 有一个名为 custMilestones 作为标记名的富文本内容控件*(它是使用富文本 cc 设置的),并且内容控件中有一个空格,否则代码将引发对象引用未设置异常。

编辑 2015 年 7 月 30 日,生成的 xml 产生了奇怪的样式结果:

0 投票
1 回答
989 浏览

c# - OpenXML C#:在字处理中更改单词的颜色

我想改变一个单词的颜色。我在 runproperties 中添加颜色,但不是更改单个单词的颜色,而是更改整行的颜色。看代码。

0 投票
1 回答
1161 浏览

c# - 将多个 Word 文档样式合并为一个 Open Xml

我目前正在开展一个项目,将 3 个文档合并为一个新文档。为了添加它们,我正在创建一个 AltChunk 方法来包含文档。

我的问题是三者之间的样式存在冲突。我的意思是,我用一张下面有红色文本的表格保存一个。但是,一旦这三个合并到一个新的文档中,该文档的样式就会重置为纯黑色文本。有没有办法将所有三个样式合并到这个新文档中?

下面是我如何合并文档的代码(我没有显示顶部,因为到目前为止一切都很好)。

任何帮助,将不胜感激。谢谢。

编辑:我改为使用 PowerTools 中的 DocumentBuilder,但是,这仍然不能解决合并样式的问题。任何建议,将不胜感激。

0 投票
1 回答
562 浏览

c# - 使用 WordProcessingDocument 时如何删除 XMLSchemaReference?

我想从 Word 文档中删除 XMLSchemaReference。运行 VBA 代码时,这很简单:

在 VSTO 中使用 ThisDocument 类时,使用 C# 也很简单:

但是,当使用 WordProcessingDocument 的实例(在普通的 Windows 应用程序中)时,我不知道如何执行相同的操作。知道我应该如何编写我的 C# 代码吗?

0 投票
1 回答
420 浏览

c# - 创建有效的 ServerDocument 实例时如何防止 XmlException?

我有以下代码:

应该注意的是 documentPath 是一个有效的路径,并且该文档使用了 vsto 应用程序。它可以很好地用 word 打开,我可以毫无问题地使用我的 vsto 扩展。

提到的代码行引发异常:

缺少根元素。

在 System.Xml.XmlTextReaderImpl.Throw(Exception e) 在 System.Xml.XmlTextReaderImpl.ParseDocumentContent() 在 System.Xml.XmlTextReaderImpl.Read() 在 System.Xml.XmlLoader.Load(XmlDocument doc, XmlReader reader, Boolean preserveWhitespace)在 System.Xml.XmlDocument.Load(XmlReader reader) 在 System.Xml.XmlDocument.LoadXml(String xml) 在 Microsoft.Office.Tools.OfficeOpenXmlAppInfoDocument.ServerAppInfo.TryGetManifestInfo(PackagePart part, ManifestType& type, String& xml) 在 Microsoft.Office .Tools.OfficeOpenXmlAppInfoDocument.ServerAppInfo.EnsureMaps() 在 Microsoft.Office.Tools.OfficeOpenXmlAppInfoDocument.ServerAppInfo..ctor(Package package) 在 Microsoft.Office.Tools.OfficeOpenXmlAppInfoDocument.EnsureAppInfo()
在 Microsoft.Office.Tools.OfficeOpenXmlAppInfoDocument.Microsoft.VisualStudio.Tools.Applications.Runtime.IAppInfo.ReadItem(String type, String id) 在 Microsoft.VisualStudio.Tools.Applications.AppInfo.GetDeploymentManifestUrl(IAppInfo appInfo) 在 Microsoft.VisualStudio。 Tools.Applications.ServerDocument.Initialize(Byte[] bytes, String documentPathOrFileType, FileAccess access, Boolean throwOnPreviousVersion) 在 Microsoft.VisualStudio.Tools.Applications.ServerDocument.Initialize(Byte[] bytes, String documentPathOrFileType, FileAccess access) 在 Microsoft.VisualStudio .Tools.Applications.ServerDocument..ctor(String documentPath) at ConsoleApplication12.Program.Main(String[] args)

如何预防这个问题?

0 投票
1 回答
196 浏览

c# - 保存 OpenXml 文档时出现 InvalidDataException

我的代码旨在创建一个 docx 文档,从更多文档中获取部分并将它们合并为一个。

该代码只是一个片段,它适用于docx由 Office 2013 创建,但如果文档是doc由 Office 2013 保存为 docx 的(由旧版本的 Office 创建) ,则它会失败targetDoc.MainDocumentPart.Document.Save()。执行后会出现以下错误。

这是什么意思?我该如何解决?