2017-08-05 80 views
1

我用下面的方法來創建一個PDF文件中顯示:的Apache PDFBox的2.0文本不中創建PDF文件

private void createPdf() throws IOException { 
    PDDocument doc = new PDDocument(); 
    PDPage page = new PDPage(); 
    doc.addPage(new PDPage()); 

    PDPageContentStream content = new PDPageContentStream(doc, page); 

    content.beginText(); 
    content.setFont(PDType1Font.HELVETICA, 26); 
    content.showText("Example Text"); 
    content.endText(); 

    content.close(); 

    doc.save("report.pdf"); 
    doc.close(); 
} 

它創建一個具有白頁的新文件,但沒有文字顯示。怎麼了?

我使用Apache PDFBox 2.0.7。

+2

你看過頁面的底部嗎? –

+2

維加,@蒂爾曼暗示的是,你沒有指出任何文字的位置。因此,它在(0,0)處繪製,如果代碼位於頁面的左下角。 – mkl

+0

我仔細檢查過,但頁面上沒有任何內容。感謝提示。任何其他想法? – Vega180

回答

1

改變此密碼

PDPage page = new PDPage(); 
doc.addPage(new PDPage()); 

這個

PDPage page = new PDPage(); 
doc.addPage(page); 

你所犯的錯誤與沒有增加任何新的一頁。你所做的操作是在另一個對象上完成的。

您的文字現在應該在頁面底部顯示。 (y = 0是PDF中的底部)

+0

謝謝!顯然我是盲人。 – Vega180