对不起,这是我在Stackoverflow上的第一个问题,如果我犯了一个错误。
我的问题是:
我需要在Itext 7中创建一个动态表,因为我需要从表的单元格或当前状态中获取高位。 该表在A4 Papersheat上具有固定位置,因为它是发票的一部分。`public Table createTable(LinkedList positionDTOSet,StyleConfiguration styleConfiguration){
float[] floats = {(float) 0.3,3, (float) 0.5, (float) 0.5, (float) 0.5, (float) 0.5, (float) 0.5};
Table table = new Table(floats);
table.setFixedPosition(50,100,480).setFontSize(8).setFixedLayout();
table.addHeaderCell("ID")
.addHeaderCell("Beschreibung")
.addHeaderCell("Anzahl")
.addHeaderCell("Einheit")
.addHeaderCell("P.p.Einheit")
.addHeaderCell("Netto")
.addHeaderCell("Brutto");
while (!positionDTOSet.isEmpty()){
PositionDTO positionDTO = positionDTOSet.pop();
table.addCell(new Paragraph(String.valueOf(positionDTO.getId())))
.addCell(generateTableForDescription(positionDTO.getDescription(), styleConfiguration))
.addCell(new Paragraph(String.valueOf(positionDTO.getAmount())))
.addCell(new Paragraph(positionDTO.getUnit()))
.addCell(new Paragraph(String.valueOf(positionDTO.getPrice())))
.addCell(new Paragraph(String.valueOf(positionDTO.getPrice())))
.addCell(new Paragraph(String.valueOf(positionDTO.getPrice())));
}
return table;
}
private Cell generateTableForDescription(String description, StyleConfiguration styleConfiguration){
Cell cell = new Cell().add(new Paragraph(description)).setMinHeight(10).setMaxHeight(80).setWidth(240);
UnitValue cellhight = cell.getHeight();
return cell;
}`