Creare PDF con iText

DOMANDA:

E' possibile creare in Java dei file PDF con dei contenuti personalizzati?



RISPOSTA:

In Java esistono diverse possibilità per creare PDF. Una di queste è utilizzare una libreria molto potente e di facile utilizzo di nome iText.
Grazie a questa libreria (scaricabile da qui, la versione attuale è la 5.2.1) possiamo creare, aggiornare e leggere PDF utilizzando oggetti ad alto livello di astrazione, a basso livello o anche librerie grafiche (PDFGraphics2D). Addirittura iText supporta la crittografia.

Oggi vi mostrerò un piccolissimo esempio di quanto sia facile creare dal nulla un PDF con questa libreria.

Importiamo nel nostro progetto il file itextpdf-5.2.1.jar.

La classe CreaPdf:

package pdf;

import java.io.FileOutputStream;
import com.itextpdf.text.Document;
import com.itextpdf.text.Paragraph;
import com.itextpdf.text.pdf.PdfWriter;

public class CreaPdf {
 
   private String nome;

   public CreaPdf(String name){
      this.nome = name;
   }

   public boolean createPdf(){
      try {
         Document document = new Document();
        
         // istanza di PdfWriter
         PdfWriter.getInstance(document, new FileOutputStream(nome));

         document.open();

         // aggiungiamo un paio di paragrafi
         Paragraph p = new Paragraph("vienimi a trovare su:");
         document.add(p);
         Paragraph p1 = new Paragraph("http://lancill.blogspot.it");
         document.add(p1);

         document.close();

         return true;

      } catch(Exception e) {
         e.printStackTrace();
      }

      return false;
   }
}



La classe di Test:

package pdf;

public class TestPdf {
   public static void main(String[] args) {

      CreaPdf cp = new CreaPdf("C:\\ciao.pdf");
      if(cp.createPdf())
         System.out.println("Pdf creato con successo");
      else
         System.out.println("Creazione Pdf fallita");
   }
}

Controllate in "C:\", troverete il vostro file pdf con i due paragrafi aggiunti da codice. Per approfondirne l'utilizzo vi invito a documentarvi direttamente sul sito.


Commenti

  1. Salve, sapresti dirmi quale è il mettodo più adatto per arrottondare egli scipt pdf esempio:

    var a=this.getField("tota");
    var b=this.getField("totb");
    event.value=a.value-b.value

    grazie Danilo

    RispondiElimina
    Risposte
    1. Ciao, se ho ben capito la tua esigenza, stai parlando degli script Javascript integrabili in un pdf. Quello purtroppo non è Java ma appunto Javascript! Però ti lascio questo link http://www.mrwebmaster.it/javascript/faq/come-faccio-arrotondare-numero-javascript_717.html in cui puoi trovare le funzioni di arrotondamento Javascript che poi sono uguali a quelle Java su cui puoi trovare esempi esaustivi sempre nel mio blog: http://lancill.blogspot.it/2012/09/arrotondamento-e-troncamento-in-java.html

      Ciao e grazie per la visita

      Elimina
  2. grazie, sei stato molto preciso e gentile.
    alla prossima
    Danilo

    RispondiElimina

Posta un commento

Post popolari in questo blog

Arrotondamento e troncamento in Java

Eclipse: Shortcuts (scorciatoie) da tastiera

Strutture dati: List, Set, Map

Creare un eseguibile Java