java 实现两个pdf文件 合并为一个pdf 文件

2021-11-03 00:00:00 文件 两个 并为

package test;

import java.io.FileOutputStream;  

import com.lowagie.text.Document;  

import com.lowagie.text.pdf.PdfCopy;  

import com.lowagie.text.pdf.PdfImportedPage;  

import com.lowagie.text.pdf.PdfReader;  

/**

 * @author Crazy.jia    不同pdf文件 合并 

 *

 */

public class Test3 {

    public static void main(String[] args) {  

        String[] files = { “file:///C:/Users/Crazy.jia/Desktop/00.pdf”,”file:///C:/Users/Crazy.jia/Desktop/1.pdf” };  

        String savepath = “C:\\Users\\Crazy.jia\\Desktop\\temp.pdf”;  

        mergePdfFiles(files, savepath);  

    } /* 

         * * 合並pdf文件 * * @param files 要合並文件數組(絕對路徑如{ “e:\\1.pdf”, “e:\\2.pdf” , 

         * “e:\\3.pdf”}) * @param newfile 

         * 合並後新產生的文件絕對路徑如e:\\temp.pdf,請自己刪除用過後不再用的文件請 * @return boolean 

         * 產生成功返回true, 否則返回false 

         */  

  

    public static boolean mergePdfFiles(String[] files, String newfile) {  

        boolean retValue = 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 (int i = 0; i < files.length; i++) {  

                PdfReader reader = new PdfReader(files[i]);  

                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) {  

            e.printStackTrace();  

        } finally {  

            document.close();  

        }  

        return retValue;  

    }  

}

    原文作者:易水寒点cn
    原文地址: https://blog.csdn.net/zyj13565734384/article/details/80585943
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。

相关文章