1
テーブルのセルを指定された幅と回転したテキストでレンダリングするバグがあるようです。回転角が(Math.PI/2)の場合、テキストは隣接するセルにブリードし、回転角が - (Math.PI/2)の場合、セルの高さはページの最下部まで広がります。ここでitextテーブルのセル内で7回転したテキスト
は、ユニットテストです:
@Test
public void tableRotationTest02() throws IOException,InterruptedException {
String outFileName = OUTPUT_FOLDER + "tableRotationTest02.pdf";
// String cmpFileName = sourceFolder + cmpPrefix + "tableRotationTest02.pdf";
// FileOutputStream file = new FileOutputStream(outFileName);
PdfWriter writer = new PdfWriter(outFileName);
PdfDocument pdfDoc = new PdfDocument(writer);
Document doc = new Document(pdfDoc);
Table table = new Table(new float[]{25, 50})
.addCell(new Cell().add(new Paragraph("cell 1, 1").setRotationAngle((Math.PI/2))))
.addCell(new Cell().add(new Paragraph("cell 1, 2").setRotationAngle((Math.PI/3))))
.addCell(new Cell().add(new Paragraph("cell 2, 1").setRotationAngle(-(Math.PI/2))))
.addCell(new Cell().add(new Paragraph("cell 2, 2").setRotationAngle((Math.PI))));
doc.add(table);
doc.close();
// Assert.assertNull(new CompareTool().compareByContent(outFileName, cmpFileName, destinationFolder, "diff"));
}
自己完結したコードサンプルをありがとうございます。これは本当にバグです。我々はそれを見てみましょう。 –