我已经使用开放XML成功生成了word文档文件,但是我的页面太多了, 我怎么能删除它们?
答案 0 :(得分:0)
这取决于这些空白页面在Open XML中的表示方式;您可能希望发布示例文档以准确演示空白页面的表示方式。
但是让我们来看一个Word文档的情况,其中用户插入了额外的分页符(通过在Word中按ctrl-enter),导致空白页面。这些分页符将在XML中表示为:
<w:br w:type="page"/>
页面中仍会有大量标签用于间距,字体等;页面也可以显示页眉和页脚。但是,让我们将空白页定义为没有新段落文本的空白页。在Open XML中,新文本显示为w:t标记。
因此,为了删除由额外分页符创建的空白页面,中间没有文本,我们可以在XML文档上运行以下正则表达式,替换为空白(“”):
<w:br w:type="page"/>(.(?!<w:t>))*(?=<w:br w:type="page"/>)
这个正则表达式将搜索一系列两个或多个分页符,中间没有新文本,删除除最后一个之外的所有分页。
(请注意,这不会处理文档末尾的空白页面,这有点棘手。此外,如果您想要考虑包含图像,文本框等的页面,正则表达式将会必须扩大到包括相关项目。)