2009-08-05 7 views
4

Momentan benutze ich iText, um automatisch ein PDF zu generieren. Und mein Problem ist, dass, wenn der Inhalt wirklich sehr groß ist, ich die Höhe und Breite des Inhalts berechnen muss, und dann neue Seite hinzufügen ... das ist wirklich sehr inkonvinziell.Wie schreibe ich Inhalt in pdf benutze iText?

so frage ich mich, ob es eine Methode wie folgt gibt: Document.add ("ein sehr sehr großer Artikel"); und danach wird automatisch eine PDF-Datei generieren ????

Vielen Dank im Voraus!

+0

Fragt mich die gleiche Frage. –

+0

Welche Art von "Inhalt" möchten Sie hinzufügen? – cagcowboy

+0

Umwickeln Sie in Ihrem Programm die Codezeilen, die den Inhalt in eine Schleife für (int i = 0; i <100; i ++) hinzufügen, und versuchen Sie, das PDF zu generieren. Wenn die Dinge richtig eingerichtet sind, werden Sie bemerken, dass iText eine mehrseitige PDF erstellt hat. –

Antwort

5

Das folgende erstellt eine 9-seitige pdf ohne Höhe und Breite zu berechnen.

import java.io.FileOutputStream; 
import java.io.IOException; 
import com.lowagie.text.Document; 
import com.lowagie.text.DocumentException; 
import com.lowagie.text.Paragraph; 
import com.lowagie.text.pdf.PdfWriter; 

public class HelloWorld { 
     public static void main(String[] args) { 
       Document document = new Document(); 
       try { 
         PdfWriter.getInstance(document, 
             new FileOutputStream("HelloWorld.pdf")); 
         document.open(); 
         String text = ""; 
         for (int i = 0; i < 10000; i++) { 
           text += "test"; 
         } 
         document.add(new Paragraph(text)); 
       } catch (DocumentException e) { 
         System.err.println(e.getMessage()); 
       } catch (IOException ex) { 
         System.err.println(ex.getMessage()); 
       } 
       document.close(); 
     } 
} 
0

eine neue Seite wird automatisch generiert, wenn der Inhalt der aktuellen Seite voll ist.