`
weigang.gao
  • 浏览: 488515 次
  • 性别: Icon_minigender_1
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

itext5.5合并PDF

 
阅读更多

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

代码如下:代码很简单.就不多解释了.

PDF合并:MergePDFUtil.java类中的 代码如下:

package com.utils;

import java.io.FileOutputStream;
import java.io.IOException;

import com.itextpdf.text.Document;
import com.itextpdf.text.DocumentException;
import com.itextpdf.text.pdf.PdfCopy;
import com.itextpdf.text.pdf.PdfImportedPage;
import com.itextpdf.text.pdf.PdfReader;

/**
 * 合并PDF
 */
public class MergePDFUtil {

	public static void main(String[] args) throws Exception{
		String[] files = { "D:\\a.pdf", "D:\\b.pdf" };
		String savepath = "D:\\temp.pdf";
		mergePdfFiles(files, savepath);
	}
	
	/* 合並pdf文件
    * @param files 要合並文件数组(绝对路劲{ "D:\\a.pdf", "D:\\b.pdf" })
    * @param newfile 合并后新产生的文件绝对路径如D:\\temp.pdf
    */
    public static void mergePdfFiles(String[] files, String savepath) throws Exception{
		try {
			//创建一个与a.pdf相同纸张大小的document
			Document document = new Document(new PdfReader(files[0]).getPageSize(1));
			PdfCopy copy = new PdfCopy(document, new FileOutputStream(savepath));
			document.open();
			for (int i = 0; i < files.length; i++) {
				//一个一个的遍历现有的PDF
				PdfReader reader = new PdfReader(files[i]);
				int n = reader.getNumberOfPages();//PDF文件总共页数
                System.out.println("n:"+n);
				for (int j = 1; j <= n; j++) {
					document.newPage();
					PdfImportedPage page = copy.getImportedPage(reader, j);
					copy.addPage(page);
				}
			}

			document.close();

		} catch (IOException e) {
			e.printStackTrace();
		} catch (DocumentException e) {
			e.printStackTrace();
		}
	}

}

 

分享到:
评论

相关推荐

    itext相关JARitext-asian-5.2.0及itextpdf-5.5.13.1.zip

    这个压缩包包含了两个主要的JAR文件:`itext-asian-5.2.0.jar`和`itextpdf-5.5.13.1.jar`,它们在处理PDF文件时扮演着重要的角色。 `itext-asian-5.2.0.jar`是iText的一个扩展,主要是为了支持亚洲语言,如中文、...

    itextpdf-5.5.5

    《深入解析iTextPDF 5.5.5:构建PDF文档的强大工具》 在IT行业中,生成、编辑和处理PDF文档是一项常见的需求。iTextPDF是一个广泛使用的Java库,专门用于创建、修改和处理PDF文档。本文将深入探讨iTextPDF 5.5.5...

    ItextCore生成PDF文件的java类库

    6. `io-7.1.4.jar`:这是Itext的输入/输出模块,处理PDF文档的读取和写入操作,包括流式处理、解析和合并PDF文件等功能。 7. `io-7.1.4-sources.jar`:Itext输入/输出模块的源代码,方便开发者深入研究和调试。 8....

    iTextSharp.5.5.13.1.rar

    这个库是基于Java的iText库的.NET版本,提供了全面的功能集,使开发者能够方便地在.NET环境中创建、编辑、阅读和处理PDF文件。iTextSharp 5.5.13.1是其最新且稳定的版本,为开发人员提供了可靠和高效的PDF编程解决...

    iTextsharp 5.5.13.1 API帮助.zip

    - `PdfCopyFields`和`PdfSmartCopy`:这两个类可以帮助优化内存使用和合并多个PDF文档。 通过阅读iTextsharp 5.5.13.1的API帮助文档,开发者可以详细了解每个类和方法的用法,从而更熟练地进行PDF文档的操作。无论...

    iTextSharp5.5.13

    这得益于`iTextAsian.dll`,它包含了处理这些语言所需的额外字体和映射。 - 提供了`PdfFont`类来管理PDF文档中的字体,包括嵌入字体和使用系统字体。 6. **Unicode支持**: - `iTextAsianCmaps.dll`提供了Unicode...

    iTextSharp入门

    iTextSharp 是一款基于 C# 的开源库,它源自 Java 平台的 iText 项目,专门用于生成、操作 PDF 文件。相较于其他同类产品,iTextSharp 因其强大的功能和广泛的使用而脱颖而出,并且作为开源项目,它可以免费用于商业...

    Java开发实战1200例(第1卷).(清华出版.李钟尉.陈丹丹).part3

    PDF格式扫描版,全书分为24章,共817页。2011年1月出版。 全书压缩打包成4部分,这是第3部分 注:本系列图书的第I、II卷再版时均相应改名为《xxx开发实例大全》(基础卷)及(提高卷),但内容基本无变化,需要的童鞋可...

    一个专业搜索公司关于lucene+solar资料(1)

    - 如iText、PDFBox等。 - **4.2.3 Word文件** - 利用Apache POI等库可以从Word文档中提取文本。 - 支持多种版本的Word文档。 - **4.2.4 Excel文件** - 使用Apache POI可以从Excel文档中读取数据。 - 支持多种...

Global site tag (gtag.js) - Google Analytics