Java 创建PDF打印小册子 - E

Java 创建PDF打印小册子 - E

概述

PDF打印小册子是指将PDF格式文档在打印成刊物前需要提前进行的页面排版,以便在打印后装订成册。下面以Java代码展示如何来实现。这里调用Free Spire.PDF for Java中的PdfDocument. createBooklet(java.lang.String fileName, double width, double height, boolean doubleSide)方法来创建Booklet小册子。

环境配置及代码步骤

1. 环境配置

  •   IntelliJ IDEA 2018(jdk 1.8.0)
  •   PDF Jar包:Free Spire.PDF for Java 4.4.1
  •   PDF测试文档:文件路径为IDEA程序项目文件夹路径(F:IDEAProjectPrintPDF est.pdf)

如何导入jar包:

方法1手动导入,步骤如下

 

 

 方法2Maven下载导入。需在pom.xml中配置依赖:

<repositories>
    <repository>
        <id>com.e-iceblue</id>
        <url>https://repo.e-iceblue.cn/repository/maven-public/</url>
    </repository>
</repositories>
<dependencies>
    <dependency>
        <groupId>e-iceblue</groupId>
        <artifactId>spire.pdf.free</artifactId>
        <version>4.4.1</version>
    </dependency>
</dependencies>

 

2. 代码步骤

  •   创建 PdfDocument 类的实例;
  •   通过 PdfDocument.loadFromFile() 方法加载PDF测试文档;
  •   通过 PdfDocument.getPages() 方法获取指定页面;
  •   根据获取的页面大小页面定义小册子的高度及宽度;
  •   调用 PdfDocument. createBooklet() 方法创建小册子;
  •   最后,通过 PdfDocument. saveToFile() 方法保存创建后的PDF小册子文件。保存路径为IDEA项目文件夹路径。

 

【Java完整代码】

import com.spire.pdf.*;

public class CreateBooklet {
    public static void main(String[] args) {
        //加载PDF测试文档,并获取第一页
        PdfDocument pdf = new PdfDocument();
        pdf.loadFromFile("test.pdf");
        PdfPageBase page = pdf.getPages().get(0);

        //定义小册子的宽度和高度
        float width = (float) page.getSize().getWidth()*2;
        float height = (float) page.getSize().getHeight();

        //创建小册子,并保存
        pdf.createBooklet("test.pdf", width, height,true);
        pdf.saveToFile("Booklet.pdf");
    }
}

 PDF小册子创建效果

 

 

—End—