Word 文档提供了脚注的性能不便大家为标注内容进行拓展或解释,而不影响文章的连贯性。如果咱们不须要相干的正文,能够将脚注删除,从而只保留文章主体局部。而如果应用微软 Word 对脚注进行留神删除,会十分费时费力。特地是十分大的文档,须要操作者破费微小的工夫和经验。本文给大家介绍一种办法,通过简略的编程,即可 移除 Word 文档中的所有脚注 ,方便快捷,无需大量操作。
此办法须要用到收费的库:Free Spire.Doc for Java,须要援用相干 Jar 文件到我的项目中。能够通过以下形式进行援用:
1. 应用 Maven
复制上面的代码到我的项目文件夹下的“pom.xml“文件中
<repositories>
<repository>
<id>com.e-iceblue</id>
<name>e-iceblue</name>
<url>https://repo.e-iceblue.com/nexus/content/groups/public/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>e-iceblue</groupId>
<artifactId>spire.doc.free</artifactId>
<version>5.2.0</version>
</dependency>
</dependencies>
2. 官网下载
在 Spire.Doc for Java 免费版官网 下载免费版,解压后,在“Project Structure“中,找到”Modules“,而后在其中的“Dependencies”中,增加解压出的“lib”文件夹下的 Spire.Doc.jar 文件。
移除 Word 文档中的脚注
创立 Document 类的对象。
用 Document.loadFromFile() 办法从磁盘加载 Word 文档。
循环遍历文档中的所有节,节中的所有段落,以及段落中的所有子对象,并判断子对象是否是脚注。而后再用 Paragraph.getChildObjects().removeAt() 办法逐个删除脚注。
用 Document.saveToFile() 办法保存文档。
代码示例
import com.spire.doc.*;
import com.spire.doc.fields.*;
import com.spire.doc.documents.*;
import java.util.*;
public class RemoveFootnote {public static void main(String[] args) {
// 创立 Document 类的对象
Document document = new Document();
// 从磁盘加载 Word 文档
document.loadFromFile("D:/Samples/Sample.docx");
// 在所有节中循环
for (int i = 0; i < document.getSections().getCount(); i++) {
// 获取指定节
Section section = document.getSections().get(i);
// 在该节中的段落中循环
for (int j = 0; j < section.getParagraphs().getCount(); j++)
{
// 获取指定段落
Paragraph para = section.getParagraphs().get(j);
// 创立列表
List<Footnote> footnotes = new ArrayList<>();
// 在段落的所有子对象中循环
for (int k = 0, cnt = para.getChildObjects().getCount(); k < cnt; k++)
{
// 获取指定子对象
ParagraphBase pBase = (ParagraphBase)para.getChildObjects().get(k);
// 判断该子对象是否为脚注
if (pBase instanceof Footnote)
{Footnote footnote = (Footnote)pBase;
// 将脚注增加到列表中
footnotes.add(footnote);
}
}
if (footnotes != null) {
// 在列表中的脚注中循环
for (int y = 0; y < footnotes.size(); y++) {
// 删除指定脚注
para.getChildObjects().remove(footnotes.get(y));
}
}
}
}
// 保存文档
document.saveToFile("output/removeFootnote.docx", FileFormat.Docx);
}
}
移除成果
以上援用的是收费的 Free Spire.PDF for Java 中的 JAR 文件。