很久前记录过一篇创建PDF 的文章,可以参考这里 java 利用 itext 创建pdf. 一般只是创建pdf, 但有些特殊情况还需要合并pdf 与拆分pdf, 这些功能对一iText 来说,不过是小菜一碟。创建pdf 的方法还是参考以前的文章吧,毕竟里面给出的函数齐全一些。今天用iText 5.0 测试了PDF 的合并与拆分,效果还是很好的,而且性能也不错。
java itext 合并PDF
1. 首先准备要合并的pdf,将内容放在一个 InputStream list 中,准备好目标文件目录
2. 调用 合并 pdf 的方法: concatPDFs, 传入输入流list, 输出文件流,是否处理分页参数.
3. 在 concatPDFs 方法中循环处理 将输入流转换成 PdfReader,并处理页码.
4. 利用 Document class和 PdfWriter.getInstance() 方法生成目标文件
5. 在循环中将所有输入的 PDF 合并到输出文件中.
代码如下 :package com.yihaomen.pdf;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import com.itextpdf.text.Document;
import com.itextpdf.text.pdf.BaseFont;
import com.itextpdf.text.pdf.PdfContentByte;
import com.itextpdf.text.pdf.PdfImportedPage;
import com.itextpdf.text.pdf.PdfReader;
import com.itextpdf.text.pdf.PdfWriter;
public class MergePDF {
public static void main(String[] args) {
try {
Listpdfs = new ArrayList();
for(int i=0;i<10;i++){