日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

java pdf合并_Java 合并、拆分PDF文档

發布時間:2023/12/1 java 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java pdf合并_Java 合并、拆分PDF文档 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

本文將介紹如何在Java程序中合并及拆分PDF文檔,合并文檔時,包括合并多個不同PDF文檔為一個文檔,以及合并PDF文檔的不同頁面為一頁;拆分文檔是,包括將PDF文檔按每一頁拆分,以及按指定頁數范圍來拆分。下面將通過代碼演示。

使用工具:Free Spire.PDF for Java (免費版)

Jar

文件獲取及導入:

方法

1

:通過官網

下載包。下載后,解壓文件,并將lib文件夾下的Spire.Pdf.jar文件導入java程序。

方法

2

:可通過

maven倉庫安裝

導入到maven項目。

Java

代碼示例

一、合并

1. 合并PDF文檔

import?com.spire.pdf.*;

import?java.io.*;

public?class?Merge2?{

public?static?void?main(String[]?args)?throws?Exception?{

String?outputFile?=?"output/mergeFilesByStream.pdf";

FileInputStream?stream1?=?new?FileInputStream(new?File("sample1.pdf"));

FileInputStream?stream2?=?new?FileInputStream(new?File("sample2.pdf"));

FileInputStream?stream3?=?new?FileInputStream(new?File("sample3.pdf"));

//加載PDF示例文檔

InputStream[]?streams?=?new?FileInputStream[]{stream1,?stream2,?stream3};

//合并PDF文檔

PdfDocumentBase?doc?=?PdfDocument.mergeFiles(streams);

//保存文檔

doc.save(outputFile);

doc.close();

}

}

合并前:

合并后:

2. 合并PDF頁面

import?com.spire.pdf.*;

import?com.spire.pdf.graphics.PdfBlendMode;

import?com.spire.pdf.graphics.PdfTemplate;

import?java.awt.geom.Point2D;

public?class?MergePages?{

public?static?void?main(String[]?args)?{

//加載兩個PDF文檔

PdfDocument?pdf1?=?new?PdfDocument();

pdf1.loadFromFile("test1.pdf");

PdfDocument?pdf2?=?new?PdfDocument();

pdf2.loadFromFile("test2.pdf");

//根據pdf1的第一頁繪制模板

PdfTemplate?template?=?pdf1.getPages().get(0).createTemplate();

//獲取pdf2的第二頁

PdfPageBase?page?=?pdf2.getPages().get(1);

//設置透明度和重疊樣式

page.getCanvas().setTransparency(1f,1f,?PdfBlendMode.Normal);

//將pdf1的第一頁內容寫入pdf2的第二頁中的指定位置

page.getCanvas().drawTemplate(template,new?Point2D.Float(0,350));

//保存pdf2

pdf2.saveToFile("MergePages.pdf",FileFormat.PDF);

pdf2.dispose();

}

}

合并前:

合并后:

二、拆分

測試文檔如下:

1. 按每一頁拆分

import?com.spire.pdf.*;

public?class?SplitPDF1?{

public?static?void?main(String[]?args)

{

//加載需要拆分的PDF文檔

PdfDocument?doc?=?new?PdfDocument();

doc.loadFromFile("test.pdf");

//調用方法split()將PDF文檔按每一頁拆分為單獨的文檔

doc.split("output/splitDocument-{0}.pdf",?0);

doc.close();

}

}

拆分結果:

2. 按指定頁數范圍拆分

import?com.spire.pdf.*;

import?com.spire.pdf.graphics.PdfMargins;

import?java.awt.geom.Point2D;

public?class?SplitPDF2?{

public?static?void?main(String[]?args)

{

//加載需要拆分的PDF文檔

PdfDocument?doc?=?new?PdfDocument();

doc.loadFromFile("test.pdf");

//新建第1個PDF文檔1

PdfDocument?newpdf1?=?new?PdfDocument();

PdfPageBase?page;

//將原PDF文檔的第1、2頁拆分,并保存到newpdf1

for(int?i?=?0;i<2;i++)

{

page?=?newpdf1.getPages().add(doc.getPages().get(i).getSize(),?new?PdfMargins(0));

doc.getPages().get(i).createTemplate().draw(page,?new?Point2D.Float(0,0));

}

newpdf1.saveToFile("split/result1.pdf");

//新建第2個PDF文檔

PdfDocument?newpdf2?=?new?PdfDocument();

//將原PDF文檔的第3、4頁拆分,并保存到newpdf2

for(int?i?=?2;i<4;i++)

{

page?=?newpdf2.getPages().add(doc.getPages().get(i).getSize(),?new?PdfMargins(0));

doc.getPages().get(i).createTemplate().draw(page,?new?Point2D.Float(0,0));

}

newpdf2.saveToFile("split/result2.pdf");

}

}

拆分結果:

(本文完)

總結

以上是生活随笔為你收集整理的java pdf合并_Java 合并、拆分PDF文档的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。