Java iTextPDF: 复制第一页并创建多页 PDF 文件

本代码示例使用 Java iTextPDF 库,将源 PDF 文件的第一页复制到一个新文件中,并根据指定的页数创建多个空白页。

代码实现:

import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;

import com.itextpdf.kernel.geom.PageSize;
import com.itextpdf.kernel.pdf.PdfDocument;
import com.itextpdf.kernel.pdf.PdfPage;
import com.itextpdf.kernel.pdf.PdfReader;
import com.itextpdf.kernel.pdf.PdfWriter;

public class CopyPdfFirstPage {

    public static void main(String[] args) throws IOException {
        String inputFilePath = 'input.pdf';
        String outputFilePath = 'output.pdf';
        int numPages = 5; // 创建5页

        // 读取输入文件
        PdfDocument inputPdfDoc = new PdfDocument(new PdfReader(inputFilePath));

        // 创建输出文件
        PdfDocument outputPdfDoc = new PdfDocument(new PdfWriter(new FileOutputStream(new File(outputFilePath))));

        // 复制第一页并添加到输出文件中
        PdfPage firstPage = inputPdfDoc.getPage(1);
        PageSize pageSize = firstPage.getPageSize();
        PdfPage newPage = outputPdfDoc.addNewPage(pageSize);
        firstPage.copyTo(newPage);

        // 添加新页到输出文件中
        for (int i = 2; i <= numPages; i++) {
            PdfPage page = outputPdfDoc.addNewPage(pageSize);
        }

        // 关闭输入输出文件
        inputPdfDoc.close();
        outputPdfDoc.close();

        System.out.println('复制完成!');
    }

}

代码说明:

  1. 读取输入文件: 使用 PdfDocumentPdfReader 类读取输入 PDF 文件。
  2. 创建输出文件: 使用 PdfDocumentPdfWriter 类创建一个新的 PDF 文件。
  3. 复制第一页: 获取输入文件的第一页,并将它复制到输出文件中。
  4. 添加新页: 创建指定数量的新页,并添加到输出文件中。
  5. 关闭文件: 关闭输入和输出 PDF 文件。

使用说明:

  1. 将代码保存为 CopyPdfFirstPage.java 文件。
  2. 将源 PDF 文件命名为 input.pdf,并将其放置在与代码文件相同的目录下。
  3. 编译并运行代码。
  4. 在同一目录下将生成名为 output.pdf 的文件,其中包含复制的第一页和创建的新页。

注意:

  • 代码中 numPages 变量用于指定创建的页数。
  • 该代码仅复制源文件的第一页。
  • 您可以修改代码以复制其他页或创建不同类型的页面。

本代码示例演示了如何使用 iTextPDF 库复制 PDF 文件的特定页面并创建新页,您可以根据需要修改代码以实现更复杂的功能。

Java iTextPDF: 复制第一页并创建多页 PDF 文件

原文地址: https://www.cveoy.top/t/topic/m79K 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录