python+PyMuPDF库:(三)pdf文件的选择性合并、其他格式文件转pdf

insert_file: 支持docx、xlsx、pdf、PPTX、txt、svg、xps、FB2、CBZ、EPUB、MOBI、HWPX、图片等多种格式的文件的插入。利用此方法可以将此类文件转为pdf格式的文件。

insert_pdf :用来打开pdf文件并插入。

insert_file和insert_pdf使用相同的参数,常用参数如下:

from_page,to_page 要截取的开始页和终止页,默认为-1,表示所有页

start_at 要插入到某页,默认-1,表示最后一页

rotate旋转角度

python 复制代码
from time import time
import fitz

def merge_pdf(pdf_path, pdf_names: list):
    new_doc = fitz.open()

    new_doc.insert_file(r'E:\桌面\1.jpg')

    for i, name in enumerate(pdf_names):
        file_full_path = rf'{pdf_path}\{name}'
        pdf_document = fitz.open(file_full_path)
        if i == 0:
            new_doc.insert_pdf(pdf_document, from_page=1, to_page=3, rotate=90, final=2)
        else:
            new_doc.insert_pdf(pdf_document, from_page=1, to_page=3, start_at=i, rotate=90, final=3)
        pdf_document.close()

    new_doc.save(rf'{pdf_path}\{int(time())}.pdf')
    new_doc.close()


if __name__ == '__main__':
    pdf_path = r'E:\桌面'
    pdf_names = ['91.pdf', '7.pdf', '90.pdf']
    merge_pdf(pdf_path, pdf_names)
相关推荐
Gofarlic_oms113 小时前
利用API实现ANSYS许可证管理自动化集成
运维·服务器·开发语言·matlab·自动化·负载均衡
invicinble14 小时前
这里对java的知识体系做一个全域的介绍
java·开发语言·python
m0_6742946415 小时前
如何编写SQL存储过程性能对比_记录执行时间评估优化效果
jvm·数据库·python
运气好好的16 小时前
怎样开启phpMyAdmin的操作审计日志_记录每条执行的SQL
jvm·数据库·python
观北海16 小时前
AiScan-N:AI全自动化渗透测试工具的深度技术解析
运维·自动化
南风微微吹17 小时前
中级工作者历年真题及答案解析PDF电子版(2010-2025年)
pdf
2401_8714928517 小时前
Layui如何修改Layui默认的UI主题颜色(换肤功能实现)
jvm·数据库·python
南子北游17 小时前
Python学习(基础语法1)
开发语言·python·学习
步辞17 小时前
Redis如何利用LFU算法优化缓存命中率
jvm·数据库·python
forEverPlume17 小时前
golang如何实现日志按级别过滤_golang日志按级别过滤实现教程
jvm·数据库·python