精华内容
下载资源
问答
  • 合并pdf文件
    2022-02-15 16:15:02

    工作中,有多个原理图pdf文件,为了方便查找网标,所以需要把多个pdf文件进行合并

    在网上查了以下使用python PyPDF2进行

    源码如下

    #encoding=gb18030
    import os
    import PyPDF2
    
    ##获取当前py文件所在路径
    def get_exec_dir():
        '''获取当前执行文件所在的目录
         如果本程序打包成为一个文件,则执行目录应该在临时文件夹中
        '''
        #获取当前执行文件所在路径
        exe_path = os.path.realpath(__file__)
        print(f'主文件路径:{exe_path}')
        exe_dir = os.path.dirname(exe_path)
        print(f'主文件所在的目录:{exe_dir}')
        return exe_dir
    
    def get_pdf_list(path):
        pdf_list = []
        for f in os.listdir(path):
            if f.endswith('.pdf') :
                pdf_list.append(f'{path}\\{f}')
        return pdf_list
    
    
    def merge(path, pdfs):
        '''合并pdf'''
        pdf_merge = PyPDF2.PdfFileMerger()
        for pdf in pdfs:
            pdf_merge.append(pdf)
        pdf_merge.write(f'{path}\\test.pdf')
    
    pdf_dir = get_exec_dir()
    pdf_list = get_pdf_list(pdf_dir)
    merge(pdf_dir, pdf_list)

    把此文件和pdf文件放到同一目录运行

     运行python代码,最终在当前文件夹下生成test.pdf

    此代码主要分成3个函数

    第一个获取py文件所在路径

    def get_exec_dir():
        '''获取当前执行文件所在的目录
         如果本程序打包成为一个文件,则执行目录应该在临时文件夹中
        '''
        #获取当前执行文件所在路径
        exe_path = os.path.realpath(__file__)
        print(f'主文件路径:{exe_path}')
        exe_dir = os.path.dirname(exe_path)
        print(f'主文件所在的目录:{exe_dir}')
        return exe_dir

    这个函数返回py文件所在目录,这里使用__file__,如果直接在控制台敲代码则,__file__这个变量不存在,会导致这个函数出错

    exe_path = os.path.realpath(__file__)

    获取文件的绝对路径

    exe_dir = os.path.dirname(exe_path)

    返回文件的目录

    第二个函数

    def get_pdf_list(path):
        pdf_list = []
        for f in os.listdir(path):
            if f.endswith('.pdf') :
                pdf_list.append(f'{path}\\{f}')
        return pdf_list

    列出path路径下所有的pdf文件

    f.endswith('.pdf')  判断文件的后缀是否以 .pdf结尾

    pdf_list.append(f'{path}\\{f}')  把pdf的绝对路径添加进列表

    第三个函数,合并pdf

    def merge(path, pdfs):
        '''合并pdf'''
        pdf_merge = PyPDF2.PdfFileMerger()
        for pdf in pdfs:
            pdf_merge.append(pdf)
        pdf_merge.write(f'{path}\\test.pdf')

    pdf_merge = PyPDF2.PdfFileMerger() 生成pdf合并对象

    接下来把所有pdf添加进合并对象中

    pdf_merge.write(f'{path}\\test.pdf')  在pdf所在路径下生成test.pdf文件

    记录点滴...

    更多相关内容
  • 合并PDF文件:选择需要合并的文件,点击开始合并,10s内可完成1700页文件合并(测试时使用)。
  • CombinePDF-合并PDF文件的Ruby方法 CombinePDF是一个漂亮的模型,用纯Ruby编写,可以解析PDF文件并将其与其他PDF文件合并(合并),对其加水印或标记(均使用PDF文件格式和纯Ruby代码)。 安装 安装Ruby宝石: gem...
  • java合并PDF文件

    千次阅读 2021-07-12 16:34:54
    根据需求,首先把每单生成的zip中的每个pdf文件合并生成pdf一张文件; 先引入pdf包: org.apache.pdfbox pom文件配置: <dependency> <groupId>org.apache.pdfbox</groupId...

    之前每单都可以生成一张打印单,10个订单,就需要下载打印10次,现在仓库提出一个需求,可以通过选择订单,一起打印、而且还有zip格式的,每次打印需要解压之后再打印,操作步骤多而且非常麻烦

    根据需求,首先把每单生成的zip中的每个pdf文件,合并生成pdf一张文件;

    先引入pdf包: org.apache.pdfbox

    pom文件配置:

            <dependency>
                <groupId>org.apache.pdfbox</groupId>
                <artifactId>pdfbox</artifactId>
                <version>2.0.0</version>
            </dependency>

    处理含有多个文件的PDF的zip文件,合并成一个pdf文件

    即:把zip文件格式全部换成pdf文件格式,使得每单打印都是pdf文件

    方法如下:

        /**
         * 合并pdf文件
         * @throws FileNotFoundException
         * @throws BaseException
         */
        @SuppressWarnings("deprecation")
        public static void mergePdf(File[] files) throws Exception {
            // pdf合并工具类
            PDFMergerUtility mergePdf = new PDFMergerUtility();
            // 合并pdf生成的文件名
            String destinationFileName = files[0].getName();
            // 合并后pdf存放路径
            String saveDir = KnSystemUtils.getInstance().getPropValue(KnGlobal.FILE_TMP_SAVE_DIR);
            for (File file : files) {
                mergePdf.addSource(saveDir + file.separator + file.getName());
            }
            // 设置合并生成pdf文件名称
            mergePdf.setDestinationFileName(saveDir + File.separator + destinationFileName);
            // 合并pdf
            try {
                try {
                    mergePdf.mergeDocuments();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            } catch (Exception e) {
                e.printStackTrace();
            }
            System.out.println("pdf文件合并成功");
        }

    zip转pdf使用的方法是PDF文件合并的方法,现在web端选择多张订单,合并pdf文件使用的方法二进制流的合并

    方法如下:

        private void doSetupFile() throws Exception {
            PDFMergerUtility mergePdf = new PDFMergerUtility();
            String[] FilePkArr = getFilePk().split(",");
            for (String filepk : FilePkArr) {
                String uri = "/sysfile/sysfile_content_find.json?sessionId=" + getSessionId() + "&filePk=" + filepk;
                GetMethod method = getGetMethod(uri);
                int status = KnHttpClientUtils.getInstance().doExecuteHttpMethod(method);
                if (status == HttpStatus.SC_OK) {
                    log.info("Upload complete.");
                }
                InputStream inputStream = method.getResponseBodyAsStream();
                mergePdf.addSource(inputStream);
            }
            OutputStream outputStream = new ByteArrayOutputStream();
            // 指定目标文件输出流
            mergePdf.setDestinationStream(outputStream);
            mergePdf.mergeDocuments(null);
            // 获取合并后的目标数据流
            ByteArrayOutputStream mergerUtilityDestinationStream = (ByteArrayOutputStream) mergePdf.getDestinationStream();
            mergerUtilityDestinationStream.flush();
            ByteArrayInputStream swapStream = new ByteArrayInputStream(mergerUtilityDestinationStream.toByteArray());
            InputStream in = (InputStream) swapStream;

            String saveDir = KnSystemUtils.getInstance().getPropValue(KnGlobal.FILE_TMP_SAVE_DIR);
            File folder = new File(saveDir);
            // 判断文件夹路径是否存在
            if (!folder.exists() && !folder.isDirectory()) {
                folder.mkdirs();
            }
            _file = new File(saveDir + UUID.randomUUID() + ".tmp");
            IOUtils.copy(in, new FileOutputStream(_file));
        }

     总结:

    PDFMergerUtility  类中的addSource()方法,参数即文件地址也可以为二进制流

    /*     */   public void addSource(String source)
    /*     */     throws FileNotFoundException
    /*     */   {
    /* 132 */     addSource(new File(source));
    /*     */   }

    /*     */   public void addSource(InputStream source)
    /*     */   {
    /* 156 */     this.sources.add(source);
    /*     */   }

    展开全文
  • 如何合并pdf文件,pdf合并方法

    千次阅读 2022-04-01 10:24:31
    如何合并pdf文件,pdf合并方法。今天我就在这里教大家pdf合并的方法,工作中经常需要合并pdf文件的小伙伴请仔细阅读哦,争取一次性学会。

        如何合并pdf文件?众所周知,pdf是一种稳定性和兼容性都比较好的文件,不管在电脑上还是在手机上打开都有比较好的表现,所以深受大家的喜欢。不管在工作还是在生活学习中都会使用到比较多的pdf文件,所以我们电脑上应该保存有很多的pdf文件,为了更好的保存pdf文件内容,我们可以将有关联的pdf文件合并起来,这样就可以减少pdf文件丢失的概率。

        那么如何将多个多个pdf文件合并呢?pdf文件不同于word文件,简单的复制粘贴就能实现合并,很多小伙伴对于pdf合并一无所知。没有关系,今天我就在这里教大家pdf合并的方法,工作中经常需要合并pdf文件的小伙伴请仔细阅读哦,争取一次性学会。

    需要使用的工具:优速PDF工厂

    工具下载地址https://download.yososoft.com/YSPdf/YSPdf_TTY.exe

    请看详细的pdf合并步骤

    步骤1,打开电脑后再安装需要使用的“优速PDF工厂”工具,打开后点击首页右边的【PDF文件操作】进入内页,里面有pdf合并功能。

    步骤2,先点击左边列表中的【PDF合并】功能,再点击【添加文件】按钮,将需要合并的pdf文件添加到软件里。

    步骤3,如下图所示,点击文件名称右边的上下蓝色箭头,调整pdf文件的先后顺序,软件会自上而下合并文件;然后设置合并后pdf文件的名称。

    步骤4,点击右上角的【开始转换】按钮启动合并,稍等一会,当所有文件合并完成后,软件会自动打开输出文件夹,合并后的pdf文件就保存在这里。

    步骤5,从结果可以看到,软件成功的将4个pdf文件合并成了一个。

    由于pdf文件不像其他办公文件那样编辑起来非常的方便,所以想要合并pdf文件并不是一件简单的事情,我们需要使用的专业工具来帮助我们,上面小编就为大家介绍了详细的方法以及操作步骤,相信聪明的你已经学会了,如果还有疑问应该马上下载工具试一试哦。以上就是关于“如何合并pdf文件,pdf合并方法”的详细介绍,如果觉得不错就点赞支持一下吧。

    展开全文
  • 批量合并pdf文件.zip

    2021-06-08 16:16:20
    批量合并pdf文件,把需要的文件整理再一个文件夹中放再mergefrom文件夹中,mergefrom中的每个文件夹都会合并,合并文件如需按顺序合并,请编号数字即可
  • Jacob Word excel 转PDF 合并PDF文件,需要安装微软的转换插件,压缩包内含插件
  • Java合并pdf文件

    千次阅读 2021-05-08 20:44:20
    Java合并pdf文件 今天帮老师整理资料需要合并pdf文件,下了许多软件发现都需要VIP才行,所以写了个程序来帮助合并,直接在主程序中修改文件路径即可,如下图: 主要代码如下: package com.pdf; import java.io....

    Java合并pdf文件

    今天帮老师整理资料需要合并pdf文件,下了许多软件发现都需要VIP才行,所以写了个程序来帮助合并,直接在主程序中修改文件路径即可,如下图:
    在这里插入图片描述
    主要代码如下:

    package com.pdf;
    import java.io.File;
    import java.io.IOException;
    import java.util.Date;
    
    import org.apache.pdfbox.exceptions.COSVisitorException;
    import org.apache.pdfbox.util.PDFMergerUtility;
    
    
    public class PdfMerge {
    
        public static void main(String[] args) {
            MergePdf();
        }
    
        public static void MergePdf() {
            //pdf合并工具类
            PDFMergerUtility mergePdf = new PDFMergerUtility();
            //合并pdf生成的文件名
            String destinationFileName =new Date().getTime()+".pdf";
            //这是需要合并的PDF文件
            String filePath = "D://test/第一测试文件.pdf";
            // 合并后pdf存放路径
            String bothPath =  "d://testTarget";
            File file3 = new File(bothPath);
            try{
                if(!file3.exists()){
                    file3.mkdirs();
                }
            }catch(Exception e1){
                e1.printStackTrace();
            }
            mergePdf.addSource(filePath);
            mergePdf.addSource("D://test/第二测试文件.pdf");
            mergePdf.addSource("D://test/第三测试文件.pdf");
            mergePdf.addSource("D://test/第四测试文件.pdf");
            //设置合并生成pdf文件名称
            mergePdf.setDestinationFileName(bothPath + File.separator + destinationFileName);
            //合并pdf
            try {
                try {
                    mergePdf.mergeDocuments();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            } catch (COSVisitorException e) {
                e.printStackTrace();
            }
            System.out.println("pdf文件合并成功");
        }
    
    
    }
    
    

    实现所需JAR包:pdfbox-1.7.1

    JAR包下载地址:https://pdfbox.apache.org/

    pom依赖:

    <dependency>
       <groupId>org.apache.pdfbox</groupId>
       <artifactId>pdfbox</artifactId>
       <version>1.7.1</version>
    </dependency>
    

    完整代码链接:
    https://download.csdn.net/download/hhhmonkey/19131814

    展开全文
  • 合并pdf文件最简单的方法,今天小编介绍的主题是如何简单又快捷的将多个pdf文件进行合并,只需要将pdf文件添加到工具中,调整顺序之后就可以开启合并了,合并速度快。
  • Python合并pdf文件

    2021-07-01 00:51:28
      如果你需要一个PDF文件合并工具,那么本文章完全可以满足您的要求。哈喽,大家好呀,这里是滑稽研究所。不多废话,本期我们利用Python合并把多个pdf文件合并为一个。我们提前准备了5个pdf文件,来验证代码。  ...
  • 合并pdf文件-批量打印

    2021-11-25 09:16:10
    有时候遇到需要批量打印pdf文件,或者需要将很多照片合并成一个pdf文件,就可以用这个软件 ,免费软件,文末有下载链接,操作步骤: 1、下载安装软件 2、打开软件 另存为一个总的pdf文件即可 软件下载地址 链接...
  • 这是一个小型开源项目,您可以在其中合并PDF文件。 为什么我开始这个项目 在大多数情况下,合并PDF时,我会使用在线工具来完成此操作。 但是,当我需要将一些重要文件与个人信息合并时,我不想使用该网站。 因此,...
  • 合并PDF 用于在本地计算机上合并PDF文件的简单Python工具。发展pipenv venv管理器可用于安装项目所需的所有依赖项。 git clone git@github....
  • pdf_merger 合并pdf档案
  • 允许您拆分和合并PDF文件的应用程序
  • 合并PDF文件

    2012-08-14 13:17:17
    该软件可以将多个PDF文件合并为一个PDF文件 选择文件 指定多个文件进行处理合并
  • CombinePDF - 一个合并PDF文件的纯ruby库
  • 产生报告此可执行文件用于基于其他许多pdf创建具有TOC的新PDF文件。 它将它们全部合并为一个干净的文件。如何使用只需将可执行文件放在主文件夹所在的文件夹中,例如,假设您拥有: 主资料夹一月分析数据.pdf 销售...
  • 使用PDFsam(具有图形,命令行和Web界面的易于使用的桌面工具)拆分和合并PDF文件
  • 之前做的一个cad转pdf的工具,里面用到的pdf合并功能,现在单独拿出来记录下。 使用的库:Spire.PDF 在nuget中比较方便能安装到,用的是5.8.2,没几天发现又更新,现在到5.8.3,有人维护,看来还是比较好用的,...
  • Python之合并PDF文件

    千次阅读 多人点赞 2018-05-18 13:01:24
      在日常的学习生活工作中,我们有时会遇到需要合并PDF文件的需求。这时,我们可以利用相关的PDF软件(如Adobe Acrobat Reader DC)来完成这个任务,幸运的是,Python也为我们提供了这方面的处理模块PyPDF2, 借用...
  • pdf_merge.exe 用于合并pdf文件(按名称排序) 使用: 将pdf_merge.exe放到需要合并的pdf文件目录下,双击执行,会将该文件下的pdf文件按名称排序后合并为1个pdf文件。 新文件命名格式为: all_merge_年月日_时分秒....
  • 多个PDF合并成同一个。
  • 合并 多个pdf文件Article Update 13-March-2020: I removed the source code. The article that remains should act as a "design roadmap" for members who want to write the code in the programming language of...
  • Spire.pdf 4.8 ,使用无限制、无水印, 合并PDF, 拆分PDF, 图片转PDF Spire.pdf 4.8 ,使用无限制、无水印, 合并PDF, 拆分PDF, 图片转PDF
  • java多个PDF文件合并为一个PDF文件源码。PS:工程目录PDF文件夹用来放要合并的文件。
  • 有时候我们遇到如果需要将多个 PDF 文件合并成一个单独的 PDF 文件的话,就没有任何办法了,有什么方法能够达到批量合并 PDF 文件的目的呢? 我们经常需要和 PDF 文件打交道,特别是对于办公族来讲,我们经常需要...
  • 主要为大家详细介绍了C#合并及拆分PDF文件的方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
  • 这篇文章主要介绍了Python如何把多个PDF文件合并,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 代码如下 from PyPDF2 import PdfFileMerger import os files...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 43,915
精华内容 17,566
关键字:

合并pdf文件

友情链接: Bmp.rar