合并多个pdf到一个pdf文件原创
金蝶云社区-范老师加油
范老师加油
1人赞赏了该文章 336次浏览 未经作者许可,禁止转载编辑于2023年08月03日 11:18:17

通过下面的方法可以合并pdf文件,

import java.io.FileOutputStream;
import java.io.IOException;

import com.itextpdf.text.Document;
import com.itextpdf.text.DocumentException;
import com.itextpdf.text.PageSize;
import com.itextpdf.text.Rectangle;
import com.itextpdf.text.RectangleReadOnly;
import com.itextpdf.text.pdf.PdfContentByte;
import com.itextpdf.text.pdf.PdfImportedPage;
import com.itextpdf.text.pdf.PdfReader;
import com.itextpdf.text.pdf.PdfWriter;

public class Mergepdf {
	public static void main(String[] args) throws DocumentException, IOException { 
		Rectangle pageSize = new Rectangle(new RectangleReadOnly(PageSize.A4)); 
		Document mergedDocument = new Document(pageSize);
		PdfWriter writer = PdfWriter.getInstance(mergedDocument, new FileOutputStream("D:\\merged.pdf"));
		mergedDocument.open();
		PdfContentByte cb = writer.getDirectContent();
		PdfReader reader1 = new PdfReader("D:\\a1.pdf");
		PdfReader reader2 = new PdfReader("D:\\a2.pdf");
		for (int i = 1; i <= reader1.getNumberOfPages(); i++) {
			  mergedDocument.newPage();
			  PdfImportedPage page = writer.getImportedPage(reader1, i);
			  cb.addTemplate(page, 0, 0);
		} 
		for (int i = 1; i <= reader2.getNumberOfPages(); i++) {
		  mergedDocument.newPage();
		  PdfImportedPage page = writer.getImportedPage(reader2, i);
		  cb.addTemplate(page, 0, 0);
		} 
		mergedDocument.close(); 
	}
}


赞 1