iText PDF矩形填充颜色

时间:2014-10-02 14:06:26

标签: java itext

我想用颜色填充矩形。我使用这些代码但没有工作。

PdfContentByte canvas = writer.getDirectContent();
canvas.rectangle(50, 600, 500, 40);
canvas.setColorFill(BaseColor.GRAY);
//canvas.setRGBColorFill(20, 50, 30);
//canvas.setCMYKColorFill(0, 0, 0, 75);
canvas.setColorStroke(BaseColor.LIGHT_GRAY);
canvas.stroke();

任何人都知道如何填写它?

2 个答案:

答案 0 :(得分:4)

你必须在setColorFill()

之后调用canvas.fill()
 PdfContentByte canvas = writer.getDirectContent();
 canvas.rectangle(50, 600, 500, 40);
 canvas.setColorFill(BaseColor.GRAY);
 canvas.fill();

答案 1 :(得分:0)

我使用iText 5,这对我有用

rectangle.setBackgroundColor(BaseColor.YELLOW); // or whatever color you have
canvas.rectangle(rectangle);

只需确保它不在 canvas.beginText()canvas.endText()或任何其他绘图操作中即可。