java笔记|速学 | 如何帮女朋友用Java合并两个PDF

今天女朋友要我帮她把两个PDF合并成一个,当时太忙没来得及弄,却被打印店老板抢了风头,越想越气。想来我怎么也是个java小菜鸡,这么强大的Java生态肯定有操作PDF的。于是立马百度大法作此文章!
1.引入依赖
com.itextpdf itextpdf 5.4.3

2.书写工具类
package pdf; import java.io.FileOutputStream; import com.itextpdf.text.Document; import com.itextpdf.text.pdf.PdfCopy; import com.itextpdf.text.pdf.PdfImportedPage; import com.itextpdf.text.pdf.PdfReader; /** * @author 结构化思维wz */public class PDF {public static void main(String[] args) {String[] files = { "D:\\OneDrive\\桌面\\Java实习_王泽_22届.pdf", "D:\\OneDrive\\桌面\\Java后端_王泽_22届.pdf"}; String savePath = "D:\\OneDrive\\桌面\\test.pdf"; Boolean bool = mergePdfFiles(files, savePath); if (bool){System.out.println("合并成功,新pdf路径为:"+savePath); }else {System.out.println("合并失败,请检查路径"); }}/* * 合并pdf文件 * @param files 要合并文件数组(绝对路径如{ "e:\\1.pdf", "e:\\2.pdf" , * "e:\\3.pdf"}),合并的顺序按照数组中的先后顺序,如2.pdf合并在1.pdf后。 * @param newfile 合并后新产生的文件绝对路径,如 e:\\temp\\tempNew.pdf, * @return boolean 合并成功返回true;否则,返回false * */public static boolean mergePdfFiles(String[] files, String newFile) {boolean retValue = https://www.it610.com/article/false; Document document = null; try {document = new Document(new PdfReader(files[0]).getPageSize(1)); PdfCopy copy = new PdfCopy(document, new FileOutputStream(newFile)); document.open(); for (String file : files) {PdfReader reader = new PdfReader(file); int n = reader.getNumberOfPages(); for (int j = 1; j <= n; j++) {document.newPage(); PdfImportedPage page = copy.getImportedPage(reader, j); copy.addPage(page); } } retValue = true; } catch (Exception e) {System.out.println(e); } finally {System.out.println("执行结束"); document.close(); } return retValue; } }

3.测试
java笔记|速学 | 如何帮女朋友用Java合并两个PDF
文章图片

java笔记|速学 | 如何帮女朋友用Java合并两个PDF
文章图片

java笔记|速学 | 如何帮女朋友用Java合并两个PDF
文章图片

【java笔记|速学 | 如何帮女朋友用Java合并两个PDF】结束语:人民有信仰国家有力量,老子有对象!
java笔记|速学 | 如何帮女朋友用Java合并两个PDF
文章图片

    推荐阅读