在 iText PDF 中,我们可以像这样为单元格设置背景颜色
PdfPCell cell = buildCell(phrase, displayType, col);
cell.setBackgroundColor(new java.awt.Color(33, 150, 243, 153));
但事实证明,iText 忽略了 java.awt.Color
不透明度。
有什么办法可以做到这一点吗?
最佳答案
iText 5.5.7 中添加了对透明单元格背景颜色的支持,更准确地说是在 git commit 09ccaa728830a404e92fc3040dd3626198576fef 中。
不过,您似乎使用的是较旧的 iText 版本,正如您使用 java.awt.Color
而不是 com.itextpdf.text.BaseColor
所表明的那样.
根据 iText 的具体版本,您可以尝试使用 PdfPCellEvent
实现,而不是使用 setBackgroundColor
设置背景颜色。在该实现中,您必须首先保存图形状态,然后设置具有透明度的 PdfGState
,用颜色填充单元格矩形,然后再次恢复图形状态。
关于java - 是否可以将 ARGB 背景颜色设置为 IText PDF 单元格?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56937087/