0

RTFドキュメントを生成するためにitext-rtf 2.1.7を使用しています。

以下のメソッドwriteSectionHeaderTableInACell()のパラメーターテーブルには、 2 つの列があります。

列ごとに、2 つの列を持つ新しい内部テーブルを挿入する必要があります。この内部テーブルには、最初の列が左揃え、2 番目の列が右揃えになります。

ただし、次のコードでは、生成された RTF ドキュメントで破損したテーブルが発生します。両方とも 1 つの行にあるはずの 2 つの内側のテーブルは、内側のテーブルごとに 1 つの行として表示されます。

RTFドキュメントのセル内に内部テーブルを追加できないように見える理由を知っている人はいますか? ありがとう。

private static void writeSectionHeaderTableInACell(PdfPTable table) {
  PdfPTable sectionTable1 = new PdfPTable(2);
  Phrase phrase1 = new Phrase("? 1 ?", FontFactory.getFont("MS Mincho", 10, Font.NORMAL));
  Paragraph p1 = new Paragraph(phrase1);
  p1.setAlignment(Element.ALIGN_LEFT);
  PdfPCell cell1 = new PdfPCell(p1);
  sectionTable1.addCell(cell1);
  Phrase phrase2 = new Phrase("2 Chi", FontFactory.getFont("MS Mincho", 10, Font.NORMAL));
  Paragraph p2 = new Paragraph(phrase2);
  p2.setAlignment(Element.ALIGN_RIGHT);
  PdfPCell cell2 = new PdfPCell(p2);
  sectionTable1.addCell(cell2);
  table.addCell(new PdfPCell(sectionTable1));

  PdfPTable sectionTable2 = new PdfPTable(2);
  Phrase phrase3 = new Phrase("Section 1", FontFactory.getFont("Times New Roman", 10, Font.NORMAL));
  Paragraph p3 = new Paragraph(phrase3);
  p3.setAlignment(Element.ALIGN_LEFT);
  PdfPCell cell3 = new PdfPCell(p3);
  sectionTable2.addCell(cell3);
  Phrase phrase4 = new Phrase("2 Eng", FontFactory.getFont("Times New Roman", 10, Font.NORMAL));
  Paragraph p4 = new Paragraph(phrase4);
  p4.setAlignment(Element.ALIGN_RIGHT);
  PdfPCell cell4 = new PdfPCell(p4);
  sectionTable2.addCell(cell4);
  table.addCell(new PdfPCell(sectionTable2));
}
4

0 に答える 0