在iText PDF中,我们可以为这样的单元格设置背景颜色
PdfPCell cell = buildCell(phrase, displayType, col);
cell.setBackgroundColor(new java.awt.Color(33, 150, 243, 153));
但是事实证明,iText会忽略java.awt.Color
的不透明度。
有什么办法吗?
答案 0 :(得分:2)
在iText 5.5.7中添加了对透明单元格背景颜色的支持,更确切地说,在git commit 09ccaa728830a404e92fc3040dd3626198576fef中添加了
。不过,您似乎使用的是较早的iText版本,如您使用java.awt.Color
而不是com.itextpdf.text.BaseColor
所示。
根据iText的确切版本,您可以尝试使用PdfPCellEvent
实现,而不用setBackgroundColor
设置背景色。在该实现中,您必须首先保存图形状态,然后设置透明度的PdfGState
,用颜色填充单元格矩形,然后再次恢复图形状态。