我将我的发布商核心从itext-2 ....迁移到了itextpdf-5.5.6
在itext-2中,我将一张图像放入一张PdfPTable的单元格中,我的桌子上的图像尺寸与图像相同。 现在,在itextpdf-5.5.6中,图像的大小就像那个单元格一样。
例如我使用
table.setTotalWidth(450);
并且在核心itextpdf中它也计算高度:
//ITEXTPDF
calculateWidths();
calculateHeights();
calculateHeight调用getRowHeight
getRowHeight(k, true);
并且它与itext-2中的方法不同:
我为itextpdf重新编写,发现在pdfLine.getMaxSize(..)中有以下代码:
if (chunk.isImage()) {
Image img = chunk.getImage();
if (chunk.changeLeading()) {
float height = chunk.getImageHeight() + chunk.getImageOffsetY() + img.getSpacingBefore();
image_leading = Math.max(height, image_leading);
}
}
在itext的情况下我没有这样的条件:
if (chunk.changeLeading()){......}
是否有解决它的平均值?
答案 0 :(得分:0)
我发现问题出在哪里:
Paragraph para = new Paragraph(new Chunk((Image) element, 0, 0, Boolean.FALSE));
块的最后一个参数是changeLeading,它只需要更改为Boolean.TRUE
感谢大家的回复