2017-08-05 1 views
1

J'utilise la méthode suivante pour créer un fichier PDF:Apache PDFBox 2.0 - Texte ne figure pas dans créé fichier 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(); 
} 

Il crée un nouveau fichier avec une page blanche, mais aucun texte est affiché . Qu'est-ce qui ne va pas?

J'utilise Apache PDFBox 2.0.7.

+2

Avez-vous regardé au bas de la page? –

+2

Vega, ce que @Tilman fait allusion est que vous n'avez indiqué aucune position pour le texte. Ainsi, il est dessiné à (0,0) qui dans le cas de votre code est dans le coin inférieur gauche de la page. – mkl

+0

J'ai revérifié, mais il n'y a rien sur la page. Merci pour l'indice. D'autres idées? – Vega180

Répondre

1

Modifier ce code

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

à cette

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

Vous avez fait l'erreur d'ajouter une nouvelle page avec rien. Les opérations que vous avez effectuées ont été effectuées sur un autre objet.

Votre texte devrait maintenant être visible au bas de la page. (y = 0 est le bas en PDF)

+0

Merci! Évidemment, j'étais aveugle .. – Vega180