首页 > 其他分享 >lowagie多个pdf合并成一个pdf

lowagie多个pdf合并成一个pdf

时间:2023-05-31 15:57:26浏览次数:30  
标签:import lowagie 合并 text new pdf com

<dependency>
            <groupId>com.lowagie</groupId>
            <artifactId>itext</artifactId>
            <version>2.1.7</version>
</dependency>


import com.lowagie.text.Document;
import com.lowagie.text.pdf.PdfCopy;
import com.lowagie.text.pdf.PdfImportedPage;
import com.lowagie.text.pdf.PdfReader;

import java.io.FileOutputStream;

/**
 * @author wang
 * @date 2022/11/4 15:50
 * @description
 */
public class PdfUtils {

    /**
     * 合并pdf
     * @param files 需要合并的pdf路径
     * @param newfile 合并成新的文件的路径
     */
    public static boolean mergePdfFiles(String[] files, String newfile) {
        boolean retValue = false;
        Document document = null;
        PdfCopy copy = null;
        PdfReader reader = null;
        try {
            document = new Document(new PdfReader(files[0]).getPageSize(1));
            copy = new PdfCopy(document, new FileOutputStream(newfile));
            document.open();
            for (String file : files) {
                reader = new PdfReader(file);
                int n = reader.getNumberOfPages();
                for (int j = 1; j <= n; j++) {
                    document.newPage();
                    PdfImportedPage page = copy.getImportedPage(reader, j);
                    copy.addPage(page);
                }
                reader.close();
            }
            retValue = true;
        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            if (reader != null) {
                reader.close();
            }
            if (copy != null) {
                copy.close();
            }
            if (document != null) {
                document.close();
            }
        }
        return retValue;
    }

    public static void main(String[] args) {
        String[] files = {"E:\\sunlord\\其他\\protocol.pdf","E:\\sunlord\\其他\\protocol.pdf" };
        String savepath = "E:\\sunlord\\其他\\protocolnew.pdf";
        boolean b = mergePdfFiles(files, savepath);
        System.out.println(b);
    }

}

标签:import,lowagie,合并,text,new,pdf,com
From: https://www.cnblogs.com/alpari-wang/p/17446376.html

相关文章

  • [Slide] 解决Slidev export导出pdf报错
    解决Slidevexport导出pdf报错问题按照Slidev的官方文档使用导出为pdf需要安装playwright-chromium官网安装方法如下:npmi-Dplaywright-chromium在我电脑上执行安装后直接执行导出命令sudoslidevexport,显示报错如下:Slidevv0.42.1(global)theme@slidev/......
  • git学习笔记——无法将本地仓库与远程仓库合并
    我本地的仓库是通过gitinit创建的,而远程仓库是直接在gitee创建的,所以这两个仓库是不同的仓库所以当push本地仓库到远程仓库的时候会失败。解决方法:#通过在后面添加以下内容即可忽略这个问题--allow-unrelated-histories#例如:gitpulloriginmaster--allow-unrelated-his......
  • cmd合并多个ts文件,ffmpeg快速转ts为mp4文件,通过m3u8合并文件
    摘自:https://blog.csdn.net/qq_33957603/article/details/1227638891、如何合并多个ts文件进入目录执行如下cmd命令即可copy/b*.tsnew.ts  2、如何将ts转为mp4ffmpeg下载官网:https://ffmpeg.org/github下载稳定版:https://github.com/BtbN/FFmpeg-Builds/releases下......
  • LC56. 合并区间
    题目来源于力扣题库,题目链接:LC56.合并区间Q:以数组intervals表示若干个区间的集合,其中单个区间为intervals[i]=[starti,endi]。请你合并所有重叠的区间,并返回 一个不重叠的区间数组,该数组需恰好覆盖输入中的所有区间 。示例1:输入:intervals=[[1,3],[2,6],[8,10],[15,......
  • IText PDF签章时,如何获取PDF页的坐标
    文章目录在itext中如何获取pdf矩形区域的坐标起因解决方法常用版本itext5itext7常见的几种坐标偏移方式沿Y轴下移沿X轴偏移总结在itext中如何获取pdf矩形区域的坐标起因最近在使用ITEXT工具做PDF的电子签章时发生了印章签在PDF区域外的问题,PDF的默认坐标系为X、Y坐标......
  • 文档在线预览(二)word、pdf文件转html以实现文档在线预览
    @目录一、将文件转换成html字符串1、将word文件转成html字符串2、将pdf文件转成html字符串二、将文件转换成html,并生成html文件FileUtils类将html字符串生成html文件示例:1、将word文件转换成html文件2、将pdf文件转换成html文件实现文档在线预览的方式除了上篇文章《文档在线预览......
  • 【专题】2022中国新能源汽车发展趋势白皮书报告PDF合集分享(附原数据表)
    报告链接:http://tecdat.cn/?p=31861新能源汽车市场从政策推动到市场驱动的转变过程中,行业也在经过了一个萌芽期和初期的探索期之后,步入了一个迅速发展的时期。此外,在科技力量的加持下,品牌、车型、区域等细分领域都在持续地进行着调整,行业格局已经初具规模,在持续的创新中,产业已经......
  • Java中多个pdf合并为一个pdf文件工具类
    Java中多个pdf合并为一个pdf文件工具类方案一:引入依赖<dependency><groupId>com.lowagie</groupId><artifactId>itext</artifactId><version>2.1.7</version></dependency>工具类importcom.lowagie.text.Document;impo......
  • hdu 5367(线段树+区间合并)
    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5367官方题解:对于求“高山脉”长度,可以利用线段树。树节点中保存左高度连续长度,左高度连续区间的高度,左高度连续区间的状态(即是否高于第一个高度不同的山),右高度连续长度,右高度连续区间的高度,右高度连续区间的状态,每段区间内的“......
  • PHP 提取PDF文件内容
    这里以提取 亚马逊日期范围报告PDF汇总的数据根据路径下载PDF/***description:文件下载*@throwsCException*/publicfunctiongetFile($url,$save_dir='',$filename='',$type=0){if(trim($url)==''){......