iText 7 を使用してリストを作成しています。複数レベルのインデントが必要です。
例:
- アイテム1
- サブアイテム 1
- サブアイテム 2
- サブサブアイテム 1
- サブサブアイテム 2
- 項目 2
- サブアイテム 1
- サブアイテム 2
- サブサブアイテム 1
- サブサブアイテム 2 - サブアイテム 1
- サブアイテム 2
- サブサブアイテム 1
- サブサブアイテム 2
- アイテム3
- サブアイテム 1
- サブアイテム 2
- サブサブアイテム 1
- サブサブアイテム 2
現在の試行:
public void IndentedList() throws IOException {
String filePath = dest + "Example2.pdf";
File file = new File(filePath);
file.getParentFile().mkdirs();
PdfWriter writer = new PdfWriter(filePath);
PdfDocument pdf = new PdfDocument(writer);
Document document = new Document(pdf);
PdfFont font = PdfFontFactory.createFont(FontConstants.TIMES_ROMAN);
document.add(new Paragraph("iText is: ").setFont(font));
List list = new List()
.setSymbolIndent(12)
.setListSymbol("\u2022")
.setFont(font);
list
.add(new ListItem("Item 1"))
.add(new ListItem("SubItem1"))
.add(new ListItem("Sub Sub Item 1"))
.add(new ListItem("Sub Sub Item 2"));
.add(new ListItem("Item 1"))
.add(new ListItem("SubItem1"))
.add(new ListItem("Sub Sub Item 1"))
.add(new ListItem("Sub Sub Item 2"));
document.add(list);
document.close();
}
特定のリスト項目を何らかの方法でインデントする方法が必要だと考えています。
ありがとうございます。