iText Read and Write PDF in Java

摘要: This article talks about reading and writing PDF using iText PDF library.

This article talks about reading and writing PDF using iText PDF library.

pom.xml
        <dependency>
            <groupId>com.itextpdf</groupId>
            <artifactId>itextpdf</artifactId>
            <version>5.5.10</version>
        </dependency>

P.S Tested with iTextPdf 5.5.10

1. iText – Write PDF

iText PdfWriter example to write content to a PDF file.

PdfWriteExample.java
package com.mkyong;
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();

Output, a new PDF file is created – /tmp/itext.pdf

2. iText – Read PDF

iText PdfReader example to read above PDF file.

PdfReadExample.java
package com.mkyong;
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();

Output

This is my paragraph 1
This is my paragraph 2
This is my paragraph 3

3. Talk

The code above uses 2 major classes – PdfWriter and PdfReader. As indicated by the name, these classes provide the base for reading and writing a pdf. Document object is basically a Pdf file which is being addressed. Paragraph is a content type that can be written to the Pdf. Other possible content types include Anchor, Chapter, Section, List, PdfPTable etc. All these classes help to create a specific type of content as per the requirement in the pdf.

iText pdf is the most convenient library with its latest version supporting HTML to Pdf, Image to Pdf as well as QR codes. The only drawback of the iText pdf library is that it is complex to work with it. The class structure is tough to understand.

Note
More iText PDF examples

References

  1. More about iText Pdf coding
  2. iText Pdf jar download
  3. Write Pdf using PdfOne library
  4. Pdf operations using Aspire Pdf in Java

上一篇: Apache POI – Reading and Writing Excel file in Java
下一篇: Intellij IDEA – Spring boot reload static file is not working
 评论 ( What Do You Think )
名称
邮箱
网址
评论
验证
   
 

 


  • 微信公众号

  • 我的微信

站点声明:

1、一号门博客CMS,由Python, MySQL, Nginx, Wsgi 强力驱动

2、部分文章或者资源来源于互联网, 有时候很难判断是否侵权, 若有侵权, 请联系邮箱:summer@yihaomen.com, 同时欢迎大家注册用户,主动发布无版权争议的 文章/资源.

3、鄂ICP备14001754号-3, 鄂公网安备 42280202422812号