public static byte[] mix(List<byte[]> bytes) throws Exception {
ByteArrayOutputStream bos = new ByteArrayOutputStream();
Document document = new Document();// 创建一个新的PDF
PdfCopy copy = new PdfCopy(document, bos);
document.open();
for (byte[] bs : bytes) {// 取出单个PDF的数据
PdfReader reader = new PdfReader(bs);
int pageTotal= reader.getNumberOfPages();
log.info("pdf的页码数是 ==> {}",pageTotal);
for (int pageNo=1;pageNo<=pageTotal;pageNo++){
document.newPage();
PdfImportedPage page = copy.getImportedPage(reader, pageNo);
copy.addPage(page);
}
reader.close();
}
document.close();
byte[] pdfs = bos.toByteArray();
bos.close();
copy.close();
return pdfs;
}
工具包使用的itextPDF
<dependency> <groupId>com.itextpdf</groupId> <artifactId>itextpdf</artifactId> <version>5.4.3</version> </dependency>