我正在JAVA制作一个项目,我正在使用iText。现在在一个阶段我想为我的画布添加颜色我尝试使用以下代码,但它们无法正常工作
PdfContentByte canvas = pdf.getDirectContent();
Rectangle rect = new Rectangle(12,12,583,830);
rect.setBorder(Rectangle.BOX);
rect.setBorderWidth(1);
canvas.rectangle(rect);
canvas.setColorFill(BaseColor.YELLOW);
canvas.fillStroke();
除了Color之外,所有事情都很好。
答案 0 :(得分:0)
你正在混合两种不同的东西。
您可以定义Rectangle
对象的背景颜色:
rect.setBackgroundColor(BaseColor.YELLOW);
或者您使用setColorFill()
方法(就像您一样),但在这种情况下,您需要使用rectangle()
方法,并使用矩形坐标作为参数来构造路径。
请注意,在后一种情况下使用setFillStroke()
是有意义的,但在前一种情况下没有意义。在您的代码示例中,它没有意义,因为您使用的是Rectangle
对象。