iText - PDF in Java lesen und schreiben

In diesem Artikel wird das Lesen und Schreiben von PDF-Dateien mit der Bibliothek voniText PDFbeschrieben.
pom.xml
com.itextpdf itextpdf 5.5.10
P.S Tested with iTextPdf 5.5.10
1. iText - PDF schreiben
Das Beispiel von iTextPdfWriterzum Schreiben von Inhalten in eine PDF-Datei.
PdfWriteExample.java
package com.techfou;
import com.itextpdf.text.*;
import com.itextpdf.text.pdf.PdfWriter;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
public class PdfWriteExample {
private static final String FILE_NAME = "/tmp/itext.pdf";
public static void main(String[] args) {
writeUsingIText();
}
private static void writeUsingIText() {
Document document = new Document();
try {
PdfWriter.getInstance(document, new FileOutputStream(new File(FILE_NAME)));
//open
document.open();
Paragraph p = new Paragraph();
p.add("This is my paragraph 1");
p.setAlignment(Element.ALIGN_CENTER);
document.add(p);
Paragraph p2 = new Paragraph();
p2.add("This is my paragraph 2"); //no alignment
document.add(p2);
Font f = new Font();
f.setStyle(Font.BOLD);
f.setSize(8);
document.add(new Paragraph("This is my paragraph 3", f));
//close
document.close();
System.out.println("Done");
} catch (FileNotFoundException | DocumentException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}
Ausgabe wird eine neue PDF-Datei erstellt -/tmp/itext.pdf

2. iText - PDF lesen
Das Beispiel von iTextPdfReaderzum Lesen der obigen PDF-Datei.
PdfReadExample.java
package com.techfou;
import com.itextpdf.text.pdf.PdfReader;
import com.itextpdf.text.pdf.parser.PdfTextExtractor;
import java.io.IOException;
public class PdfReadExample {
private static final String FILE_NAME = "/tmp/itext.pdf";
public static void main(String[] args) {
PdfReader reader;
try {
reader = new PdfReader("f:/itext.pdf");
// pageNumber = 1
String textFromPage = PdfTextExtractor.getTextFromPage(reader, 1);
System.out.println(textFromPage);
reader.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
Ausgabe
This is my paragraph 1 This is my paragraph 2 This is my paragraph 3
3. Talk
Der obige Code verwendet zwei Hauptklassen -PdfWriter undPdfReader. Wie der Name schon sagt, bilden diese Klassen die Grundlage für das Lesen und Schreiben eines PDFs. Das Objekt vonDocumentist im Grunde eine PDF-Datei, die adressiert wird. Paragraph ist ein Inhaltstyp, der in das PDF geschrieben werden kann. Andere mögliche Inhaltstypen umfassenAnchor,Chapter,Section,List,PdfPTable usw. Alle diese Klassen helfen dabei, einen bestimmten Inhaltstyp gemäß den Anforderungen im PDF zu erstellen.
iText pdf ist die bequemste Bibliothek mit der neuesten Version, die HTML zu Pdf, Bild zu Pdf sowie QR-Codes unterstützt. Der einzige Nachteil der iText-PDF-Bibliothek besteht darin, dass die Arbeit damit komplex ist. Die Klassenstruktur ist schwer zu verstehen.
Note
MehriText
PDF examples