使用指定宽度和旋转文本渲染表格中的单元格似乎存在错误。如果旋转角度为 (Math.PI / 2),则文本渗入相邻单元格,如果旋转角度为 -(Math.PI / 2),则单元格高度延伸到页面底部。
这是单元测试:
@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"));
}