iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >Java实现合并多个PDF的示例代码
  • 565
分享到

Java实现合并多个PDF的示例代码

2024-04-02 19:04:59 565人浏览 独家记忆

Python 官方文档:入门教程 => 点击学习

摘要

这里合并用到了一个itext的包。使用Maven直接导入依赖即可。 <dependency> <groupId>com.lowagie</gro

这里合并用到了一个itext的包。使用Maven直接导入依赖即可。

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

这个是我写的一个utl工具类,里面还写了一个main方法,如果你有两个pdf,可以直接用main方法跑一下。

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;

public class PdfUtil {

    
    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 (int i = 0; i < files.length; i++) {
                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 {
            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 = { "D:\\Case\\0000001\\00001\\ABIStatistic.pdf", "D:\\Case\\0000001\\00001\\ABITable.pdf",
                "D:\\Case\\0000001\\00001\\CVRR.pdf" };
        String savepath = "D:\\Case\\0000001\\00001\\temp.pdf";
        boolean b = mergePdfFiles(files, savepath);
        System.out.println(b);
    }
}

补充

通过java还能实现pdf的拆分

1.按每页单独拆分


import com.spire.pdf.*;

public class SplitPDF1 {
	public static void main(String[] args)
	{
	//加载需要拆分的PDF文档
  PdfDocument doc = new PdfDocument();
  doc.loadFromFile("test.pdf");

  //调用方法split()将PDF文档按每一页拆分为单独的文档
  doc.split("output/splitDocument-{0}.pdf", 0);
  doc.close();
	}
}

2.按指定页数范围拆分


import com.spire.pdf.*; 
import com.spire.pdf.graphics.PdfMargins; 
 
import java.awt.geom.Point2D; 
 
public class SplitPDF2 { 
  public static void main(String[] args) 
  { 
 
    //加载需要拆分的PDF文档 
    PdfDocument doc = new PdfDocument(); 
    doc.loadFromFile("test.pdf"); 
 
    //新建第1个PDF文档1 
    PdfDocument newpdf1 = new PdfDocument(); 
    PdfPageBase page; 
 
    //将原PDF文档的第1、2页拆分,并保存到newpdf1 
    for(int i = 0;i<2;i++) 
    { 
      page = newpdf1.getPages().add(doc.getPages().get(i).getSize(), new PdfMargins(0)); 
      doc.getPages().get(i).createTemplate().draw(page, new Point2D.Float(0,0)); 
    } 
    newpdf1.saveToFile("split/result1.pdf"); 
 
    //新建第2个PDF文档 
    PdfDocument newpdf2 = new PdfDocument(); 
 
    //将原PDF文档的第3、4页拆分,并保存到newpdf2 
    for(int i = 2;i<4;i++) 
    { 
      page = newpdf2.getPages().add(doc.getPages().get(i).getSize(), new PdfMargins(0)); 
      doc.getPages().get(i).createTemplate().draw(page, new Point2D.Float(0,0)); 
    } 
    newpdf2.saveToFile("split/result2.pdf"); 
  } 
} 

到此这篇关于Java实现合并多个PDF的示例代码的文章就介绍到这了,更多相关Java合并多个PDF内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: Java实现合并多个PDF的示例代码

本文链接: https://www.lsjlt.com/news/162239.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Java实现合并多个PDF的示例代码
    这里合并用到了一个itext的包。使用maven直接导入依赖即可。 <dependency> <groupId>com.lowagie</gro...
    99+
    2022-11-12
  • C#实现PDF页面合并的示例代码
    目录程序环境代码示例1.从两个PDF文档页面实现页面合并2.在同一个PDF文档实现页面合并本文以C#及vb.net代码为例介绍如何来实现合并PDF页面内容。本文中的合并并非将两个文档...
    99+
    2022-11-13
  • JAVA实现DOC转PDF的示例代码
    目录一、下载依赖二、代码实现三、转换结果四、后续研究五、总结Word作为目前主流的文本编辑软件之一,功能十分强大,应用人群广,但是它也存在一些问题。像是Word文件在不同软件或操作平...
    99+
    2022-11-12
  • Java实现合并word文档的示例代码
    目录说明实现1.首先定义好主文档2.定义需要追加的文档3. 代码实现4. 成果展示说明 在做项目中,遇到了一种情况,需要将一个小word文档的内容插入到一个大word(主文档)中。 ...
    99+
    2022-11-13
    Java合并word文档 Java合并word Java合并文档
  • python 按照sheet合并多个Excel的示例代码(多个sheet)
    工作中会遇到这样的需求,有多个Excel的格式一样,都有多个sheet,且每个sheet的名字和格式一样,我们需要按照sheet 合并,就是说合并后的表的格式和合并钱的格式是一样的。...
    99+
    2022-11-12
  • JAVA实现PDF转HTML文档的示例代码
    本文是基于PDF文档转PNG图片,然后进行图片拼接,拼接后的图片转为base64字符串,然后拼接html文档写入html文件实现PDF文档转HTML文档。 引入Maven依赖 &...
    99+
    2022-11-12
  • Java实现无损Word转PDF的示例代码
    目录前言word转pdf实现思路项目远程仓库Maven项目pom文件依赖核心代码实现结果分析前言 本来想写word转pdf和pdf转word的代码呢,没想到word转pdf就写了很多...
    99+
    2022-11-13
  • Python 多张图片合并成一个pdf的参考示例
    目录过程拍照用到的Python 操作库Python遍历文件夹获取图片旋转图片展示方向并压缩像素整体代码整体代码将脚本打包成exe安装 PyInstaller打包脚本总结过程 拿到一个需求最重要的就是将大块...
    99+
    2022-06-02
    python 图片合成 python 合成pdf
  • python实现合并两个有序列表的示例代码
    题目描述 将两个升序链表合并为一个新的升序链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 LeetCode原题地址:https://leetcode-cn.com/pr...
    99+
    2022-11-12
  • Java实现将彩色PDF转为灰度PDF的示例代码
    目录配置程序环境转彩色PDF为灰度实现代码(Java)补充本文以Java代码为例介绍如何实现将彩色PDF文件转为灰度(黑白)的PDF文件,即:将PDF文档里面的彩色图片或者文字等通过...
    99+
    2022-11-13
  • pandas实现数据合并的示例代码
    目录一、 concat--数据合并1.1 概述1.2 指定合并的轴方向--axis1.3 指定合并轴另外一个轴标签是否合并--join1.4 指定合并轴原标签是否需要变化--igno...
    99+
    2022-11-11
  • Java实现PDF转为Word文档的示例代码
    目录代码编译环境将 PDF 转换为固定布局的 Doc/Docx 文档完整代码将 PDF 转换为流动形态的 Doc/Docx 文档完整代码效果图众所周知,PDF文档除了具有较强稳定性和...
    99+
    2023-01-28
    Java实现PDF转Word Java PDF转Word Java PDF Word
  • java 如何实现多张PDF合并为一张PDF
    import org.apache.pdfbox.multipdf.PDFMergerUtility; import java.io.IOException; public class PDFMergerExample {     publ...
    99+
    2023-09-16
    java pdf 开发语言
  • Python实现PDF转MP3的示例代码
    目录一、PDF转为MP3 二、准备工作三、代码很简单四、变更播音员总结一、PDF转为MP3  我们平常看到很多文件都是PDF格式,网上的各类书籍多为此格式。有时候...
    99+
    2023-05-18
    Python实现PDF转MP3 Python PDF转MP3 Python PDF MP3
  • Java实现PDF转HTML/Word/Excel/PPT/PNG的示例代码
    从 Maven 下载 Aspose.PDF 通过将以下配置添加到 pom.xml, 您可以直接从基于Maven的项目 轻松地使用Aspose.PDF for Java 。 <r...
    99+
    2022-11-13
  • Java实现归并排序的示例代码
    目录1.算法理解2.实现代码3.实现效果1.算法理解 参考:图解Java中归并排序算法的原理与实现 2.实现代码 import java.lang.reflect.Array; im...
    99+
    2022-11-13
  • Java实现四则混合运算代码示例
    使用栈来实现,可以处理运算优先级。使用自然四则运算表达式即可,如:4+(3*(3-1)+2)/2。无需把表达式先转换为逆波兰等形式。package com.joshua.cal; import java.util.Collections; ...
    99+
    2023-05-31
    java 四则运算 ava
  • Python实现为PDF去除水印的示例代码
    目录前言原理特色成果安装依赖代码想法前言 为什么做出这个? 就是有时候从网上下载的资料中的pdf有水印,看着不舒服。 比如说我从网上下载的试卷,然后去打印店打印,打印之后水印看着很不...
    99+
    2022-11-13
  • Go来合并两个csv的实现示例
    背景 通常我们处理文件都是用python+pandas,确实很香。但是今天突然有人找我用go写一个合并两个csv文件的,需要将两个csv按id进行合并,大致如下图 思路很简单,先...
    99+
    2022-11-12
  • Pandas实现批量拆分与合并Excel的示例代码
    目录前言一、拆分成小表格二、合并excel1.介绍2.代码前言 提示:这里可以添加本文要记录的大概内容: 将一个EXCEL等份拆成多个EXCEL 将多个小EXCEL合并成一个大EXC...
    99+
    2022-11-11
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作