Java操作PDF文件,竟然如此简单

iText,是 一个开源 Java 库,支持 PDF 文档的开发和转换。其特点有:支持表格,图片,定制字体等。

maven 依赖

使用 iText 的时候需要用 maven 依赖如下:

<dependency>    <groupId>com.itextpdf</groupId>    <artifactId>itext7-core</artifactId>    <version>7.2.0</version>    <type>pom</type></dependency>

简单实例

建立 PDF 需要 4 个步骤:

创建 一个 PdfWriter,用于定义 pdf 的路径地址创建一个 pdf 文档,Document,与 PdfWriter 关联向文档中添加内容关闭文档

下面从 hello world 开始。

import com.itextpdf.kernel.pdf.PdfDocument;import com.itextpdf.kernel.pdf.PdfWriter;import com.itextpdf.layout.Document;import com.itextpdf.layout.element.Paragraph;public class PDFDemo {    public static void main(String[] args) {        try{            PdfWriter pdfWriter = new PdfWriter("./demo.pdf");            PdfDocument pdfDocument = new PdfDocument(pdfWriter);            Document document = new Document(pdfDocument);            document.add(new Paragraph("Hello World"));            document.close();        }catch(Exception e){            e.printStackTrace();        }    }}

示例结果:

Java操作PDF文件,竟然如此简单

在项目中经常需要 PDF 文件中打印表格,这时就可以使用 Table 对象,创建一个个单元格并将表格内容写入单元格中。

public static void main(String[] args) {    try{        PdfWriter pdfWriter = new PdfWriter("./demo2.pdf");        PdfDocument pdfDocument = new PdfDocument(pdfWriter);        PdfFont font = PdfFontFactory.createFont("E:\\pdfProject\\src\\main\\java\\simhei.ttf");        Document document = new Document(pdfDocument).setFont(font);        Table table = new Table(4);        table.setWidth(500);        table.addHeaderCell("header 1").addHeaderCell("header 2").addHeaderCell("header 3").addHeaderCell("header 4");        for(int i = 0; i < 16; i++) {            table.addCell("cell " + i);        }        document.add(table);        document.close();    }catch(Exception e){        e.printStackTrace();    }}

示例结果:

Java操作PDF文件,竟然如此简单

本文从 iText 最基本的用法,分别介绍从表格,图片,中文来介绍 iText,希望能够帮助到你。

(0)
小多多的头像小多多创始人

相关推荐

发表回复

登录后才能评论