使用12.11.0版本。
1.生成的多层级自动编号左对齐个别无法对齐,请问改如何修改代码实现全部多层级自动编号左对齐。
2.生成的自动编号会变更原段落中字体和大小,请问添加自动编号时,如何保持原段落文字样式等不变。
Document document = new Document();
document.loadFromFile("C:\\Users\\111.docx");
//创建编号列表样式
ListStyle numberList = new ListStyle(document, ListType.Numbered);
numberList.setName("numberList");
numberList.getLevels().get(1).setNumberPrefix("\u0000.");
numberList.getLevels().get(1).setPatternType(ListPatternType.Arabic);
numberList.getLevels().get(2).setNumberPrefix("\u0000.\u0001.");
numberList.getLevels().get(2).setPatternType(ListPatternType.Arabic);
numberList.getLevels().get(3).setNumberPrefix("\u0000.\u0001.\u0002.");
numberList.getLevels().get(3).setPatternType(ListPatternType.Arabic);
numberList.getLevels().get(4).setNumberPrefix("\u0000.\u0001.\u0002.\u0003.");
numberList.getLevels().get(4).setPatternType(ListPatternType.Arabic);
numberList.getLevels().get(5).setNumberPrefix("\u0000.\u0001.\u0002.\u0003.\u0004.");
numberList.getLevels().get(5).setPatternType(ListPatternType.Arabic);
numberList.getLevels().get(6).setNumberPrefix("\u0000.\u0001.\u0002.\u0003.\u0004.\u0005.");
numberList.getLevels().get(6).setPatternType(ListPatternType.Arabic);
document.getListStyles().add(numberList);
int count = document.getSections().getCount();
for (int i = 0; i < count; i++) {
Section section = document.getSections().get(i);
int count1 = section.getParagraphs().getCount();
for (int j = 0; j < count1; j++) {
Paragraph paragraph = section.getParagraphs().get(j);
// 设置段落的左缩进
paragraph.getFormat().setLeftIndent(0);
// 设置段落的对齐方式为左对齐
paragraph.getFormat().setHorizontalAlignment(HorizontalAlignment.Left);
paragraph.getListFormat().applyStyle(numberList.getName());
paragraph.getListFormat().setListLevelNumber(Math.min(j, 6));
}
}
//保存文档
String docFilePath = "C:\\Users\\haha12.docx";
document.saveToFile(docFilePath, FileFormat.Docx);
document.dispose();
我生成的结果(第1.1和1.1.1.1.1两级与其他级别显示不一致):
1.电饭锅电饭锅电饭锅电饭锅的方法。
1.1.Sfsdaheahargadssdfs。
1.1.1.Sfsdfsf。
1.1.1.1.高温高文革师傅三个望各位。
1.1.1.1.1.顾问顾问岗位给我个。
1.1.1.1.1.1.为各位给我个违规为各位哥。
1.1.1.1.1.1.1.上个坟望各位顾问岗位各位。
1.1.1.1.1.1.2.升格为给娃儿给娃儿噶额外。
1.1.1.1.1.1.3.服务范围给我个违规为各位。
1.1.1.1.1.1.4.施工方违规为各位高温高温。
我想要的:
1.电饭锅电饭锅电饭锅电饭锅的方法。
1.1.Sfsdaheahargadssdfs。
1.1.1.Sfsdfsf。
1.1.1.1.高温高文革师傅三个望各位。
1.1.1.1.1.顾问顾问岗位给我个。
1.1.1.1.1.1.为各位给我个违规为各位哥。
1.1.1.1.1.1.1.上个坟望各位顾问岗位各位。
1.1.1.1.1.1.2.升格为给娃儿给娃儿噶额外。
1.1.1.1.1.1.3.服务范围给我个违规为各位。
1.1.1.1.1.1.4.施工方违规为各位高温高温。