class mergePdfUtil{
/**
* pdf文件流合并,返回byte文件流
* @param bytes
* @param appointmentListByte
* @return
*/
public static byte[] mergePdf(byte[] bytes, byte[] appointmentListByte) {
try {
//pdf合并工具类
PDFMergerUtility mergePdf = new PDFMergerUtility();
// 添加 pdf 数据源
mergePdf.addSource(new ByteArrayInputStream(bytes));
mergePdf.addSource(new ByteArrayInputStream(appointmentListByte));
OutputStream outputStream = new ByteArrayOutputStream();
// 指定目标文件输出流
mergePdf.setDestinationStream(outputStream);
//合并pdf
mergePdf.mergeDocuments(null);
ByteArrayOutputStream mergerUtilityDestinationStream = (ByteArrayOutputStream) mergePdf.getDestinationStream();
return mergerUtilityDestinationStream.toByteArray();
} catch (IOException e) {
e.printStackTrace();
}
return null;
}
/**
* 指定pdf合并
*/
public static void mergePdf2() {
try {
//pdf合并工具类
PDFMergerUtility mergePdf = new PDFMergerUtility();
//合并pdf生成的文件名
String destinationFileName =new Date().getTime()+".pdf";
// 合并后pdf存放路径
String bothPath = "D:\\"+ File.separator + destinationFileName;
//审讯记录表输入流
mergePdf.addSource("D:\\aaaaa.pdf");
mergePdf.addSource("D:\\bbbbb.pdf");
// 添加 pdf 数据源
//设置合并生成pdf文件名称
mergePdf.setDestinationFileName(bothPath);
//合并pdf
mergePdf.mergeDocuments();
} catch (IOException e) {
e.printStackTrace();
}
}
}
PDFMergerUtility,pdf合并或pdf数据流合并
于 2022-07-06 18:03:44 首次发布