高效办公!Python 批量生成PDF文档是如何做到的?

yumo6663个月前 (05-14)技术文章59



前言:

日常办公中,经常会使用PDF文档,难免需要对PDF文档进行编辑,有时候PDF文档中的大部分内容都是一样的,只是发送对象不同。

这种模板套用的场景下,使用Python进行自动化就尤为方便,用最短的时间办最高效的事。

下面就告诉大家如何用Python自动套用模板批量生成下方这样的PDF文档。

1.准备

开始之前,你要确保Python和pip已经成功安装在电脑上噢,如果没有,请访问这篇文章:超详细Python安装指南 进行安装。如果你用Python的目的是数据分析,可以直接安装Anaconda:Python数据分析与挖掘好帮手—Anaconda

Windows环境下打开Cmd(开始—运行—CMD),苹果系统环境下请打开Terminal(command+空格输入Terminal),准备开始输入命令安装依赖。

当然,我更推荐大家用VSCode编辑器,把本文代码Copy下来,在编辑器下方的终端运行命令安装依赖模块,多舒服的一件事啊:Python 编程的最好搭档—VSCode 详细指南。

在终端输入以下命令安装我们所需要的依赖模块:


看到 Successfully installed xxx 则说明安装成功。

本文完整源代码可在【Python实用宝典】公众号后台回复:批量生成pdf 下载。

2.基本使用

PyPDF是从PHP移植到Python的第三方模块。其主要特点有:

1.非常容易使用和扩展
2.提供了许多简单示例
3.没有外部依赖项
4.不需要安装变异其他库(DLL)

它的基本功能有:

1.调整PDF精度、页面格式、边距
2.管理页眉、页脚
3.自动分页符、自动换行和文本对齐
4.支持图像、颜色、超链接文本
5.支持压缩

一个最简单的生成示例


生成的效果如下,由于PDF空白处太多,这里只截字体部分:

把生成的文本变复杂一点:


看看要怎么实现这个PDF文档的生成。

首先需要继承FPDF类,以用于自定义页眉和页脚。


这样设置完页眉也页脚后,只要你使用该类定义PDF文档,便会自动带上页眉页脚。


3.批量生成PDF真的是非常方便

接下来在Python实用宝典网站(https://pythondict.com)上随机抽取了5位注册了账号的同学的ID批量制作祝福PDF文档。

这里可以复用咱刚自定义完成的页眉和页尾。不过,为了显示中文,需要在继承的类里面添加并设置字体为本地中文字体,如:


注意,add_font第一个参数是该字体注册进FPDF的名字,之后set_font的时候都使用该名字。

然后将用户名都放到一个数组里,遍历该数组,填充用户名,循环批量生成PDF.


电子版详细步骤获取方式:

1.点赞+评论(勾选同时转发)

2.关注小编。并私信回复关键字【Python】(一定要私信哦,点击我的头像就能看到私信按钮了。)

相关文章

强烈推荐!248页《python编程从入门到实践》完整版,PDF开放下载

大佬整理的python学习笔记,大家有需要的可以在文末获取。获取方式:...

《Python知识手册》,高清全彩pdf版开放下载

Python编程还不懂?今天我要把我参与编写的这套《Python知识手册》免费分享出来,看完文末有惊喜哦。...

字节跳动竟然斥巨资开发出《Python知识手册》,高清PDF

今天我要把我参与编写的这套《Python知识手册》免费分享出来,真正弘扬Python开源精神!Python 知识手册的内容主要涉及 Python 基础、数据分析,数据可视化等内容。手册的部分页面如下:...

清华教授熬夜开发的《Python王者归来》高清版PDF开放下载

相信通过这本资料你可以轻松学会 Python 语法与应用,并逐步向Python高手之路迈进!全文共计34个章节520页内容,详细到无微不至,涉及面非常宽广,技能拓展非常丰富。由国内顶级院校大佬编撰,内...

太震撼!527页战略级Python机器学习实战,实用度碾压群书!附PDF

{PDF版领取方式在文末} 《Python 数据挖掘与机器学习实战:开启数据驱动的智能探索之旅》 《Python 数据挖掘与机器学习实战》这本书宛如一座蕴藏着无尽知识财富的宝库。它绝非仅仅局限于对...

字节跳动竟然斥巨资开发出《Python知识手册》,高清PDF免费获取

今天我要把我参与编写的这套《Python知识手册》免费分享出来,真正弘扬Python开源精神!Python 知识手册的内容主要涉及 Python 基础、数据分析,数据可视化等内容。手册的部分页面如下:...