Rumah  >  Artikel  >  Java  >  Java melaksanakan fungsi import dan penghuraian PDF bagi data borang

Java melaksanakan fungsi import dan penghuraian PDF bagi data borang

PHPz
PHPzasal
2023-08-09 10:34:441758semak imbas

Java melaksanakan fungsi import dan penghuraian PDF bagi data borang

Java melaksanakan fungsi import dan penghuraian PDF bagi data borang

Dalam masyarakat maklumat moden, pertukaran dan perkongsian data adalah bahagian yang sangat penting, dan data borang ialah salah satu bentuk yang paling biasa dalam kehidupan dan kerja harian kita. Semasa memproses data borang, kadangkala perlu mengimportnya ke dalam fail PDF untuk disimpan atau dihuraikan. Artikel ini akan memperkenalkan cara menggunakan bahasa pengaturcaraan Java untuk melaksanakan import PDF dan fungsi penghuraian data borang, dan menyediakan contoh kod yang sepadan.

1. Fungsi import PDF

  1. Import pakej pergantungan

Pertama, kita perlu mengimport pakej pergantungan yang berkaitan dalam projek untuk menggunakan fungsi berkaitan operasi PDF. Dalam projek Maven, anda boleh menambah kebergantungan berikut dalam data pom. Kod sampel berikut menunjukkan cara membuat fail PDF bernama "form.pdf" dan menambah medan borang teks bernama "nama pengguna":

<dependency>
    <groupId>com.itextpdf</groupId>
    <artifactId>itextpdf</artifactId>
    <version>5.5.13.2</version>
</dependency>
    Selepas menjalankan kod di atas, fail bernama "nama pengguna" akan dijana dalam akar projek direktori. "form.pdf" ialah fail PDF dan mengandungi medan borang teks.
Isi data borang

Selepas berjaya mencipta fail PDF dan menambah medan borang, kita boleh menggunakan kod yang serupa seperti berikut untuk mengisi data borang:

import com.itextpdf.text.Document;
import com.itextpdf.text.PageSize;
import com.itextpdf.text.pdf.AcroFields;
import com.itextpdf.text.pdf.PdfWriter;

import java.io.FileOutputStream;

public class PDFImporter {

    public static void main(String[] args) {
        try {
            // 创建PDF文档对象
            Document document = new Document(PageSize.A4);

            // 创建PDF书写器对象
            PdfWriter writer = PdfWriter.getInstance(document, new FileOutputStream("form.pdf"));

            // 打开文档
            document.open();

            // 创建表单对象
            AcroFields form = writer.getAcroFields();

            // 添加文本表单域
            form.addTextField("username");

            // 关闭文档
            document.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}
    "filled_form.pdf" dalam kod di atas sudah mengisi fail PDF data borang.
  1. 2. Fungsi parsing PDF

Selain mengimport data borang ke dalam fail PDF, kami juga boleh menggunakan Java untuk menghuraikan fail PDF sedia ada untuk mendapatkan data borang.

Berikut ialah contoh kod yang menggunakan perpustakaan PDFBox untuk menghuraikan fail PDF:

import com.itextpdf.text.pdf.AcroFields;
import com.itextpdf.text.pdf.PdfReader;
import com.itextpdf.text.pdf.PdfStamper;

import java.io.FileOutputStream;

public class PDFImporter {

    public static void main(String[] args) {
        try {
            // 创建PDF读取器对象
            PdfReader reader = new PdfReader("form.pdf");

            // 创建PDF书写器对象
            PdfStamper stamper = new PdfStamper(reader, new FileOutputStream("filled_form.pdf"));

            // 获取表单对象
            AcroFields form = stamper.getAcroFields();

            // 填充表单数据
            form.setField("username", "John Doe");

            // 关闭书写器
            stamper.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

Kod di atas menggunakan kelas PDDocument dalam PDFBox dan kelas PDFTextStripper untuk memuatkan fail PDF dan mengekstrak kandungan teksnya.

Ringkasan:

Melalui contoh kod di atas, kita dapat melihat bahawa sangat mudah untuk menggunakan bahasa Java untuk melaksanakan fungsi import dan penghuraian PDF bagi data borang. Kami boleh menggunakan perpustakaan seperti iText untuk membuat fail PDF dan menambah medan borang, dan kami juga boleh menggunakan perpustakaan seperti PDFBox untuk menghuraikan fail PDF dan mendapatkan data borang. Fungsi ini memberikan kemudahan kepada kami untuk memproses data borang dalam pembangunan harian, dan juga boleh digunakan untuk merealisasikan keperluan operasi pelbagai fail PDF. Saya harap artikel ini boleh membantu kerja pembangunan Java anda! PDFBox库解析PDF文件的示例代码:

import org.apache.pdfbox.pdmodel.PDDocument;
import org.apache.pdfbox.text.PDFTextStripper;

import java.io.File;

public class PDFParser {

    public static void main(String[] args) {
        try {
            // 加载PDF文档
            PDDocument document = PDDocument.load(new File("filled_form.pdf"));

            // 创建PDF文本剥离对象
            PDFTextStripper stripper = new PDFTextStripper();

            // 提取文本内容
            String content = stripper.getText(document);
            System.out.println(content);

            // 关闭PDF文档
            document.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

上述代码使用PDFBox库中的PDDocument类和PDFTextStripper类来加载PDF文件并提取其文本内容。

总结:

通过以上的代码示例,我们可以看到使用Java语言实现表单数据的PDF导入与解析功能是非常简单的。我们可以使用iText等库来创建PDF文件并添加表单域,同时也可以使用PDFBox

Atas ialah kandungan terperinci Java melaksanakan fungsi import dan penghuraian PDF bagi data borang. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn