概述
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:\IDEAProject\PrintPDF\test.pdf)
如何导入jar包:
方法1:手动导入,如图步骤
方法2:Maven下载导入。需在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—