Java 創(chuàng)建PDF打印小冊子案例
一、概述
PDF打印小冊子是指將PDF格式文檔在打印成刊物前需要提前進行的頁面排版,以便在打印后裝訂成冊。下面以Java代碼展示如何來實現(xiàn)。這里調(diào)用Free Spire.PDF for Java中的PdfDocument. createBooklet(java.lang.String fileName, double width, double height, boolean doubleSide)方法來創(chuàng)建Booklet小冊子。
二、環(huán)境配置及代碼步驟
1. 環(huán)境配置
- IntelliJ IDEA 2018(jdk 1.8.0)
- PDF Jar包:Free Spire.PDF for Java 4.4.1
- PDF測試文檔:文件路徑為IDEA程序項目文件夾路徑(F:\IDEAProject\PrintPDF\test.pdf)
如何導(dǎo)入jar包:
方法1:手動導(dǎo)入,步驟如下


方法2:Maven下載導(dǎo)入。需在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. 代碼步驟
- 創(chuàng)建
PdfDocument類的實例; - 通過
PdfDocument.loadFromFile()方法加載PDF測試文檔; - 通過
PdfDocument.getPages()方法獲取指定頁面; - 根據(jù)獲取的頁面大小頁面定義小冊子的高度及寬度;
- 調(diào)用
PdfDocument. createBooklet()方法創(chuàng)建小冊子; - 最后,通過
PdfDocument. saveToFile()方法保存創(chuàng)建后的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();
//創(chuàng)建小冊子,并保存
pdf.createBooklet("test.pdf", width, height,true);
pdf.saveToFile("Booklet.pdf");
}
}
PDF小冊子創(chuàng)建效果:

到此這篇關(guān)于Java 創(chuàng)建PDF打印小冊子案例的文章就介紹到這了,更多相關(guān)Java 創(chuàng)建PDF打印小冊子內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
SpringBoot動態(tài)定時任務(wù)實現(xiàn)與應(yīng)用詳解
定時任務(wù)在許多應(yīng)用場景中是必不可少的,特別是在自動化任務(wù)執(zhí)行、定期數(shù)據(jù)處理等方面,定時任務(wù)能極大地提高系統(tǒng)的效率,然而,隨著業(yè)務(wù)需求的變化,定時任務(wù)的執(zhí)行頻率或時間點可能需要動態(tài)調(diào)整,所以本文給大家介紹了SpringBoot動態(tài)定時任務(wù)實現(xiàn)與應(yīng)用2024-08-08
認證授權(quán)中解決AuthenticationManager無法注入問題
這篇文章主要介紹了認證授權(quán)中解決AuthenticationManager無法注入問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-10-10
Java Swing JComboBox下拉列表框的示例代碼
這篇文章主要介紹了Java Swing JComboBox下拉列表框的示例代碼,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-12-12
JUC并發(fā)編程LinkedBlockingQueue隊列深入分析源碼
LinkedBlockingQueue 是一個可選有界阻塞隊列,這篇文章主要為大家詳細介紹了Java中LinkedBlockingQueue的實現(xiàn)原理與適用場景,感興趣的可以了解一下2023-04-04

