提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
解决aspose.words更新目录部分设置无效问题
代码如下(示例):
private static void update() throws Exception {
URL url = new URL("url");
URLConnection urlConnection = url.openConnection();
InputStream inputStream = urlConnection.getInputStream();
Document doc = new Document(inputStream);
//1、先更新域
doc.updateFields();
//2、给目录设置相应的样式
for (Field field : (Iterable<Field>) doc.getRange().getFields()) {
if (field.getType() == (FieldType.FIELD_PAGE_REF)) {
FieldPageRef pageRef = (FieldPageRef) field;
if (pageRef.getBookmarkName() != "" || pageRef.getBookmarkName().startsWith("_Toc")) {
Paragraph tocItem = (Paragraph) field.getStart().getAncestor(NodeType.PARAGRAPH);
tocItem.getParagraphFormat().setLineSpacing(24);
for (Run run : tocItem.getRuns()) {
run.getFont().setName("仿宋");
run.getFont().setSize(16);
run.getFont().setBold(true);
}
}
}
}
//3、锁定目录,避免手动更新目录后,格式失效
for (Field field : (Iterable<Field>) doc.getRange().getFields())
if (field.getType() == (FieldType.FIELD_TOC))
field.isLocked(true);
doc.save("url");
}