zoukankan      html  css  js  c++  java
  • java合并PDF,itext.jar

    远原文:http://illy.iteye.com/blog/856479

    我们有时候需要将多个PDF文件合并成一个.GUI工具的方式就不说了, 
    这里只讨论使用java程式如何合并PDF.我们只需要使用到itext.jar就可以完成任务. 

    import java.io.FileOutputStream;  
    import java.io.IOException;  
    import com.lowagie.text.Document;  
    import com.lowagie.text.DocumentException;  
    import com.lowagie.text.pdf.PdfCopy;  
    import com.lowagie.text.pdf.PdfImportedPage;  
    import com.lowagie.text.pdf.PdfReader;  
      
    public class MergeFile {  
        public static void main(String[] args) {  
            String[] files = { "e:\1.pdf", "e:\2.pdf", "e:\3.pdf" };  
            String savepath = "e:\temp.pdf";  
            mergePdfFiles(files, savepath);  
        } /* 
             * * 合並pdf文件 * * @param files 要合並文件數組(絕對路徑如{ "e:\1.pdf", "e:\2.pdf" , 
             * "e:\3.pdf"}) * @param newfile 
             * 合並後新產生的文件絕對路徑如e:\temp.pdf,請自己刪除用過後不再用的文件請 * @return boolean 
             * 產生成功返回true, 否則返回false 
             */  
      
        public static boolean mergePdfFiles(String[] files, String newfile) {  
            boolean retValue = false;  
            Document document = null;  
            try {  
                document = new Document(new PdfReader(files[0]).getPageSize(1));  
                PdfCopy copy = new PdfCopy(document, new FileOutputStream(newfile));  
                document.open();  
                for (int i = 0; i < files.length; i++) {  
                    PdfReader reader = new PdfReader(files[i]);  
                    int n = reader.getNumberOfPages();  
                    for (int j = 1; j <= n; j++) {  
                        document.newPage();  
                        PdfImportedPage page = copy.getImportedPage(reader, j);  
                        copy.addPage(page);  
                    }  
                }  
                retValue = true;  
            } catch (Exception e) {  
                e.printStackTrace();  
            } finally {  
                document.close();  
            }  
            return retValue;  
        }  
    }  

    iTextAsian.jar   itext-1.3.jar 

  • 相关阅读:
    CentOS安装扩展软件支持库
    SpringBoot 定时任务 @Scheduled cron表达式
    docker启动mysql 自定义配置文件
    Informix从一个表更新多选数据到另一个表
    maven构建web项目,用jetty测试的配置pom.xml
    STSdb数据库的实现使用类
    C#操作MySQL的类
    C#操作SQLServer2012类
    小米开源数据库<pegasus>简介
    Java虚拟机运行时内存区域简析
  • 原文地址:https://www.cnblogs.com/shihaiming/p/9246536.html
Copyright © 2011-2022 走看看