|
@@ -125,6 +125,43 @@ public class PdfUtil {
|
|
return new PdfDto(pageSizeEnum, Objects.nonNull(reader) ? reader.getNumberOfPages() : 0, pageCount);
|
|
return new PdfDto(pageSizeEnum, Objects.nonNull(reader) ? reader.getNumberOfPages() : 0, pageCount);
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ /**
|
|
|
|
+ * 新增pdf page
|
|
|
|
+ *
|
|
|
|
+ * @param pdfFile
|
|
|
|
+ * @return
|
|
|
|
+ * @throws IOException
|
|
|
|
+ */
|
|
|
|
+ public static void addPdfEmptyPage(File pdfFile) throws IOException {
|
|
|
|
+ PdfReader reader = null;
|
|
|
|
+ FileOutputStream fileOutputStream = null;
|
|
|
|
+ int pageCount;
|
|
|
|
+ try {
|
|
|
|
+ if (Objects.nonNull(pdfFile)) {
|
|
|
|
+ reader = new PdfReader(ByteArray.fromFile(pdfFile).value());
|
|
|
|
+ pageCount = reader.getNumberOfPages();
|
|
|
|
+ ByteArrayOutputStream baos = new ByteArrayOutputStream();
|
|
|
|
+ PdfStamper stamper = new PdfStamper(reader, baos);
|
|
|
|
+ for (int i = 1; i <= pageCount; i++) {
|
|
|
|
+ stamper.insertPage(2 * i, reader.getPageSizeWithRotation(1));
|
|
|
|
+ }
|
|
|
|
+ stamper.close();
|
|
|
|
+ fileOutputStream = new FileOutputStream(pdfFile);
|
|
|
|
+ IOUtils.write(baos.toByteArray(), fileOutputStream);
|
|
|
|
+ }
|
|
|
|
+ } catch (Exception e) {
|
|
|
|
+ log.error(SystemConstant.LOG_ERROR, e);
|
|
|
|
+ } finally {
|
|
|
|
+ if (Objects.nonNull(reader)) {
|
|
|
|
+ reader.close();
|
|
|
|
+ }
|
|
|
|
+ if (Objects.nonNull(fileOutputStream)) {
|
|
|
|
+ fileOutputStream.flush();
|
|
|
|
+ fileOutputStream.close();
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
/**
|
|
/**
|
|
* 获取pdfPages
|
|
* 获取pdfPages
|
|
*
|
|
*
|