我想要一个边界线作为创建PDF的边距。
我尝试使用以下代码。但它不会给所有方面带来利润。
PdfContentByte canvas = writer.getDirectContent();
Rectangle rect = document.getPageSize();
rect.setBorder(Rectangle.BOX); // left, right, top, bottom border
rect.setBorderWidth(1); // a width of 5 user units
rect.setBorderColor(BaseColor.LIGHT_GRAY); // a red border
rect.setUseVariableBorders(false); // the full width will be visible
canvas.rectangle(rect);
我也试过这个,但它没有用。
PdfContentByte canvas = writer.getDirectContent();
canvas.rectangle(5, 5, document.getPageSize().getWidth()-50, document.getPageSize().getHeight());
假设,我想留下边缘40,而不是边界。有可能吗?
答案 0 :(得分:2)
第一个代码片段应该可以工作,除非定义了CropBox。如果有裁剪框,则矩形的一部分将位于页面的可见区域。
第一个代码段的第二个问题是:
rect.setUseVariableBorders(false);
边框宽度为1,但由于您不使用可变边框,因此只能看到0.5pt,其他0.5pt将位于页面的可见区域之外。
第二个片段因为不完整而无法正常工作。您忘记添加以下行:
canvas.stroke();