问题标签 [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.
java - XWPFRun 生成运行并修剪空格
我开发了一个 Java 代码,它替换模板中的一些字符串模式,然后使用 Apache POI 生成一个输出 docx 文件。替换标题和段落中的模式很容易,但是在尝试替换文本框内时遇到了问题。我正在使用 Axel Ritcher 在Replace text in text box of docx by using Apache POI 中提供的代码,但问题是它在每次运行时都会修剪一些空白。
例如:
变成:
负责做这个替换的部分代码是这样的(函数的参数是:doc_buffer是一个XWPFDocument,pattern和replacement都是Strings):
如果您需要任何其他信息,请告诉我。
提前致谢!
ms-word - 将 OpenXML SDK 中的段落与 Word 文档中的互操作段落匹配
当我尝试解析超过 100 页的文档中的文本时,Word 互操作速度非常慢。我重新编写了代码以使用速度更快的 OpenXML SDK。我的问题是,一旦我在 OpenXML 文档中找到信息,我必须在 Word 文档中找到它并将主窗口滚动到它。为了实现这一点,我必须以某种方式将 OpenXML 段落与互操作段落匹配。我认为互操作段落与 openxml 段落完美匹配,但我错了。事实上,互操作通常比 OpenXML 有更多的段落。有什么技巧或某种信息可以帮助我匹配它们吗?例如,我发现通常互操作在表中的每一行之后还有 1 个空段落。所以我可能会使用这些信息并记住它,
更新
下面是我创建的简单加载项的屏幕截图,用于演示 Word 文档中的 interop 和 openxml 段落之间的区别,内容如下:
然后加载项检索互操作段落列表和 OpenXML 段落列表并并排显示它们:
下面是我使用的代码:
c# - 删除单元格边框后不可读的 Word 文档 (OpenXml.Wordprocessing)
创建TableCellProperties
并删除 后TableCellBorders
,word 文档变得不可读,我得到:
Word 在 test.docx 中发现不可读的内容。是否要恢复此文档的内容?如果您信任此文档的来源,请单击是。
我使用的代码:
BorderValue
设置为,Nil
因为None
似乎没有删除边框。在 MS Word 自动恢复过程之后,文件很好。什么会导致这样的问题?
c# - 如何使用 OpenXML 突出显示句子中的文本?
我正在使用下面的代码来搜索和突出显示 MS Word 文档中的文本,它适用于第 1 点但不适用于第 2 点:
我搜索Alter
or John
,它突出显示John
/ Alter
- 有效。
我搜索going
,它突出显示going
但它改变了它的顺序I am to school going
- 不起作用。
如何解决第 2 点?下面是我的代码。
c# - 某些部分的 OpenXML Landscape
您如何将某些部分(我应该使用哪种类型的部分?)设置为横向或纵向?
我正在尝试创建具有以下部分属性的部分(请参见下面的代码),然后将该部分分别设置为横向或纵向。但是,当我使用此代码并创建中断段落时,代码会横向生成一个空白页。
c# - WordprocessingDocument:如何替换包含在一组特殊字符中的特定文本?
我需要基于一个模板生成几个word文档。在每个文档中都需要替换某些字符串(所有字符串都包含在一对花括号中,以便轻松区分它们)。
我试过了 :
** 阅读整个模板并使用 Regex.Replace 替换所有出现的单词
** 并且还可以访问每个 Text 元素
但上述解决方案均无效,因为在 .docx 文件中,所有这些大括号都存储在不同的文本元素 ( <w:t>
) 中:
有什么方法可以使用特殊字符在模板中标记变量,以便我可以轻松找到并替换它们?
c# - 如何在 ac# 类中以编程方式知道打开的 .docx 文件是“严格的”还是“过渡的”
由于 .docx 文件有两种变体:“严格”或“过渡”。是否有一种编程方式来识别这些 .docx 文件的变体?
我有 MS Office Word 的加载项,我只需要允许“过渡”和“严格”不允许/错误。
到目前为止,我试图获得wordprocessingDocument.MainDocumentPart.Document.Conformance
,但仅从一致性获得 null,即使我不确定它是否是一种理想的方法......
java - 如何从 docx4j 运行中简洁地提取文本?
我想document.xml
从 DOCX 文件中使用 docx4j 从运行中提取文本,如下所示:
我提取了运行,现在我想获取每次运行的文本。下面的代码有效,但非常冗长。是否可以以更简洁的方式获取 org.docx4j.wml.R 实例的文本?
虽然存在“R::getContent”和“R::getRPr”,但我想知道为什么文本文档中不存在“R::getText”。
python - 如何检查 BeautifulSoup 标签是否是某个标签?
如果我使用以下命令找到某个标签beautifulsoup
:
我看下一个标签。如果它是标签,我只想使用该<w:t>
标签。如何检查下一个标签是什么类型的标签?
我尝试element.find_next_sibling().startswith('<w:t')
了该元素,但它说NoneType object is not callable
。我也试过element.find_next_sibling().find_all('<w:t'>)
,但它没有返回任何东西。
我正在使用beautifulsoup
并希望坚持使用它,eTree
如果可能的话,不要使用 bs4 添加或其他解析器。
c# - 在 UWP 中使用 OPEN-XML SDK 生成 Doc 文件
我想在我的 UWP 应用程序中创建一个 Microsoft Word 文档,并且我已经成功地在 APP Local 文件夹中创建了 doc 文件。但我想在用户选择的特定文件夹位置创建这个 doc 文件。
我的意思是用户浏览一个位置,然后在该位置创建 doc 文件。
这是我在 App 本地路径中创建 Doc 文件的代码:
尝试在特定位置创建 doc 文件时出现以下错误,如下所示:
错误
Message=媒体写保护:'D:\Training\TestDoc.docx'
代码