2010-12-21 64 views
0

我正在使用PDFBox從我的用戶輸入表單之一生成PDF。對於繪製線我使用PDPageContentStream.drawLine和文本PDPageContentStream.drawString。文本工作完美,但在使用drawLine時,當我嘗試打印PDF時,出現如附圖所示的錯誤。我的代碼看起來像這樣使用PDPageContentStream.drawLine的pdfbox錯誤

PDPage page = new PDPage(); 
release.addPage(page); 
contentStream = new PDPageContentStream(release,page); 
int margin = 40; 
vertHeight -= thisFontHeight * fontSize * 1.05f + 5; 

contentStream.drawLine(margin,vertHeight + margin - 5,          page.getMediaBox().getWidth() - margin, vertHeight + margin - 5) 

任何幫助表示讚賞alt text

回答

2

您的代碼示例不會表現出來,但我懷疑你是混合線條和文字。你不能在BT和ET之間畫線。

  1. 開始文本
  2. 繪製一些文字
  3. 最終文本
  4. 畫一條線
  5. 開始文本
  6. 繪製一些文字
  7. 最終文本
  8. 畫些線條
  9. etc

例如,如果您在1和3之間畫了一條線,則會出現上述錯誤(或與此類似的錯誤)。 PS:如果不是這樣,我們需要一個樣本PDF來診斷問題。

+0

感謝馬克,工作!我正在畫BT和ET之間的界限,沒有找到任何資源說這個。 – mona 2010-12-21 22:22:34