java带书签合并拆分pdf样例
本人最近做民航维修手册发布任务时遇到合并拆分pdf并且插入附件丢失书签问题
//封面
public static final String COVERS_PAGE = "01_covers";
//批准页
public static final String APPROVE_PAGE = "02_approve";
//维修总裁声明
public static final String DECLARE_PAGE = "03_declare";
//总目录
public static final String CATALOG_PAGE = "04_catalog";
//批准有效页清单
public static final String APPROVE_VALID_PAGE = "05_approvevalid";
//有效页清单
public static final String VALID_PAGE = "06_valid";
//改版记录
public static final String REVISION_PAGE = "07_revision";
//插换页记录
public static final String PLUGCHG_PAGE = "08_plugchg";
//第一部分修订说明
public static final String AMEND_PAGE = "09_first";
//第二部分前言Introduction
public static final String INSTRODUCTION_PAGE = "10_second";
//第三部分定期维修项目
public static final String THIRD_PAGE = "11_third";
//第四部分部件维修控制
public static final String FOUR_PAGE = "12_four";
//第五部分
public static final String FIVE_PAGE = "13_five";
//第六部分
public static final String SIX_PAGE = "14_six";
public static final String DIRECTION_START = "start";
public static final String DIRECTION_END = "end";
public static void main(String args[]) throws InvalidPasswordException, IOException {
ArrayList flist = new ArrayList();
flist.add("C:/Users/Xu1fw/Desktop/qdal/start2.pdf");
flist.add("C:/Users/Xu1fw/Desktop/qdal/six.pdf");
// flist.add("C:/Users/Xu1fw/Desktop/qdal/end.pdf");
//flist.add("d:/eotest/2014910__487506.pdf");
// flist.add("d:/eotest/sect2.pdf.pdf.pdf");
try {
// PDFUtil.composeMTPDF(flist, "D:/ALL80/CAOM012427.pdf");
PDFUtil.mergePdfFiles(flist, "C:/Users/Xu1fw/Desktop/qdal/merge2.pdf",SIX_PAGE,589);
} catch (Exception e) {
e.printStackTrace();
}
}
public static void main22(String[] args) {
String filePath = "C:/Users/Xu1fw/Desktop/qdal/MP07.pdf";
File file = new File(filePath);
PDDocument document = null;
try {
if(file != null && file.isFile()){
System.out.println(file.getPath());
document = PDDocument.load(file, MemoryUsageSetting.setupTempFileOnly());
}
int pages =<