2014-09-25 105 views
0

我想要創建PDF的邊距線。IText PDF Margin Border

我試着用下面的代碼。但它不會在所有方面留下保證金。

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的所有邊和比我想邊界。可能嗎 ?

回答

2

第一個代碼片段應該工作,除非定義了一個CropBox。如果有一個裁剪框,矩形的一部分將位於頁面的可見區域。

的第二個問題,您的第一個片段的擔憂:

rect.setUseVariableBorders(false); 

你有1邊框寬度,但你不使用可變邊界僅0.5pt可以看出,其他0.5pt會外您網頁的可見區域。

第二個代碼段將不起作用,因爲它不完整。您忘記添加以下行:

canvas.stroke(); 
+0

canvas.stroke()邏輯工作正常。謝謝。 – 2014-09-25 13:02:48