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 

  • 相关阅读:
    插入排序
    APPlication,Session,Cookie,ViewState和Cache之间的区别
    sqlserver 2005新特性
    选择排序
    Transact_SQL小手册
    装箱和取消装箱
    select语句的执行步骤:
    using 的三种用法
    创建索引及撤销
    (转译)用FFmpeg和SDL写播放器08软件缩放
  • 原文地址:https://www.cnblogs.com/shihaiming/p/9246536.html
Copyright © 2011-2022 走看看