是否可以将ARGB背景颜色设置为IText PDF单元格?

时间:2019-07-08 14:27:53

标签: java itext awt

在iText PDF中,我们可以为这样的单元格设置背景颜色

PdfPCell cell = buildCell(phrase, displayType, col);
cell.setBackgroundColor(new java.awt.Color(33, 150, 243, 153));

但是事实证明,iText会忽略java.awt.Color的不透明度。

有什么办法吗?

1 个答案:

答案 0 :(得分:2)

在iText 5.5.7中添加了对透明单元格背景颜色的支持,更确切地说,在git commit 09ccaa728830a404e92fc3040dd3626198576fef中添加了

不过,您似乎使用的是较早的iText版本,如您使用java.awt.Color而不是com.itextpdf.text.BaseColor所示。

根据iText的确切版本,您可以尝试使用PdfPCellEvent实现,而不用setBackgroundColor设置背景色。在该实现中,您必须首先保存图形状态,然后设置透明度的PdfGState,用颜色填充单元格矩形,然后再次恢复图形状态。