那曲檬骨新材料有限公司

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

Python怎么批量生成PDF文檔

汽車電子技術(shù) ? 來(lái)源:Python實(shí)用寶典 ? 作者: Ckend ? 2023-02-28 10:11 ? 次閱讀

日常辦公中,經(jīng)常會(huì)使用PDF文檔,難免需要對(duì)PDF文檔進(jìn)行編輯,有時(shí)候PDF文檔中的大部分內(nèi)容都是一樣的,只是發(fā)送對(duì)象不同。

這種模板套用的場(chǎng)景下,使用Python進(jìn)行自動(dòng)化就尤為方便,用最短的時(shí)間辦最高效的事。

今天就給大家講講如何用Python自動(dòng)套用模板批量生成下方這樣的PDF文檔。

pYYBAGP9Yk2AWyCFAAJbmQkVwU0892.png

1.準(zhǔn)備

開始之前,你要確保Python和pip已經(jīng)成功安裝在電腦上噢,如果沒有,請(qǐng)?jiān)L問這篇文章:超詳細(xì)Python安裝指南進(jìn)行安裝。如果你用Python的目的是數(shù)據(jù)分析,可以直接安裝Anaconda:Python數(shù)據(jù)分析與挖掘好幫手—Anaconda

Windows環(huán)境下打開Cmd(開始—運(yùn)行—CMD),蘋果系統(tǒng)環(huán)境下請(qǐng)打開Terminal(command+空格輸入Terminal),準(zhǔn)備開始輸入命令安裝依賴。

當(dāng)然,我更推薦大家用VSCode編輯器,把本文代碼Copy下來(lái),在編輯器下方的終端運(yùn)行命令安裝依賴模塊,多舒服的一件事啊:Python 編程的最好搭檔—VSCode 詳細(xì)指南

在終端輸入以下命令安裝我們所需要的依賴模塊:

pip installfpdf

看到 Successfully installed xxx 則說(shuō)明安裝成功。

本文完整源代碼可在【Python實(shí)用寶典】公眾號(hào)后臺(tái)回復(fù):批量生成pdf下載

2.基本使用

PyPDF是從PHP移植到Python的第三方模塊。其主要特點(diǎn)有:

1.非常容易使用和擴(kuò)展
2.提供了許多簡(jiǎn)單示例
3.沒有外部依賴項(xiàng)
4.不需要安裝變異其他庫(kù)(DLL)

它的基本功能有:

1.調(diào)整PDF精度、頁(yè)面格式、邊距
2.管理頁(yè)眉、頁(yè)腳
3.自動(dòng)分頁(yè)符、自動(dòng)換行和文本對(duì)齊
4.支持圖像、顏色、超鏈接文本
5.支持壓縮

一個(gè)最簡(jiǎn)單的生成示例:

pYYBAGP9Yl2AGSLAAAHI_mMFEew871.png

生成的效果如下,由于PDF空白處太多,這里只截字體部分:

pYYBAGP9YnSAKy_FAAAudIFC628730.png

把生成的文本變復(fù)雜一點(diǎn):

poYBAGP9Ym2AdsKRAAGnDw6zJE8910.png

注意cell參數(shù)
1.border取值為0或1,代表是否顯示邊框。
2.ln是指在生成該文本框之后焦點(diǎn)移動(dòng)到的位置,0 代表到該文本框的右邊,1 代表?yè)Q行,2 代表文本框的正下方。
3.align是指文本對(duì)齊格式,C為居中、L為左對(duì)齊、R為右對(duì)齊。

因此上述代碼會(huì)生成類似這樣的PDF文檔:

poYBAGP9Yn6Ac-kAAAAcllUuULI031.png

cell還有2個(gè)參數(shù):

1.fill參數(shù)用于設(shè)置文本框的背景,TRUE時(shí)為白色,F(xiàn)alse為透明。
2.link參數(shù)用于添加超鏈接

下面看一個(gè)比較復(fù)雜的例子,帶圖片LOGO作為頁(yè)眉,帶頁(yè)數(shù)作為頁(yè)腳的PDF文檔:

poYBAGP9YouAGAJbAADlFybx1js123.png

看看要怎么實(shí)現(xiàn)這個(gè)PDF文檔的生成。

首先需要繼承FPDF類,以用于自定義頁(yè)眉和頁(yè)腳。

poYBAGP9YpOAAnvuAAG460iICiQ455.png

這樣設(shè)置完頁(yè)眉也頁(yè)腳后,只要你使用該類定義PDF文檔,便會(huì)自動(dòng)帶上頁(yè)眉頁(yè)腳。

poYBAGP9YpuAGheyAAEakSOs2FU913.png

真的是非常方便。

3.批量生成PDF

接下來(lái)在Python實(shí)用寶典網(wǎng)站(https://pythondict.com)上隨機(jī)抽取了5位注冊(cè)了賬號(hào)的同學(xué)的ID批量制作祝福PDF文檔。

這里可以復(fù)用咱剛自定義完成的頁(yè)眉和頁(yè)尾。不過(guò),為了顯示中文,需要在繼承的類里面添加并設(shè)置字體為本地中文字體,如:

poYBAGP9YqSAEQlcAAGzaN_B8s0003.png

注意,add_font第一個(gè)參數(shù)是該字體注冊(cè)進(jìn)FPDF的名字,之后set_font的時(shí)候都使用該名字。

然后將用戶名都放到一個(gè)數(shù)組里,遍歷該數(shù)組,填充用戶名,循環(huán)批量生成PDF.

poYBAGP9YquACs-WAAFdDg6LPAI439.png

最終效果如下:

pYYBAGP9YrKAPPGqAAKtyHYLVRU088.png

完整源代碼可在【Python實(shí)用寶典】公眾號(hào)后臺(tái)回復(fù):批量生成pdf下載

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 模板
    +關(guān)注

    關(guān)注

    0

    文章

    108

    瀏覽量

    20606
  • PDF
    PDF
    +關(guān)注

    關(guān)注

    1

    文章

    169

    瀏覽量

    33802
  • python
    +關(guān)注

    關(guān)注

    56

    文章

    4807

    瀏覽量

    85037
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    ABBYY PDF Transformer+創(chuàng)建PDF文檔的幾種方式

    ABBYY PDF Transformer+可用于從紙質(zhì)文檔、Microsoft Word文檔、圖像文件和從任何其他流行格式創(chuàng)建PDF文件。下面由小編給大家簡(jiǎn)單介紹通過(guò)ABBYY
    發(fā)表于 09-18 15:44

    詳解ABBYY PDF Transformer+從文件創(chuàng)建PDF文檔

    ,其中的選項(xiàng)用于從多個(gè)文件創(chuàng)建文檔。3. 單擊設(shè)置按鈕,并檢查您是否需要更改任何設(shè)置。“壓縮”影響所生成PDF文檔的大小和質(zhì)量。應(yīng)根據(jù)自己想要如何使用
    發(fā)表于 10-17 14:13

    詳解ABBYY PDF Transformer+從多個(gè)文件創(chuàng)建PDF文檔

    、使用和按鈕更改文件的順序。文件將以您在列表中看到的順序添加至所生成文檔。每個(gè)文件將在一個(gè)新的頁(yè)面上開始。4. 單擊“設(shè)置”按鈕,并檢查您是否需要更改任何設(shè)置。壓縮影響所生成PDF文檔
    發(fā)表于 10-18 10:14

    AutoCAD DXF/dwg轉(zhuǎn)換pdf工具下載

      1.可以將多個(gè)DWG文檔生成對(duì)應(yīng)的多個(gè)PDF文檔,或合并生成單一的PDF
    發(fā)表于 04-08 09:50

    基于多種技術(shù)的Word設(shè)計(jì)文檔自動(dòng)生成平臺(tái)

    闡述Word設(shè)計(jì)文檔自動(dòng)生成平臺(tái)的框架結(jié)構(gòu),提出了結(jié)合VBA、ADO和ASP等技術(shù)的設(shè)計(jì)思路,并詳細(xì)介紹了文檔自動(dòng)生成平臺(tái)軟件的具體實(shí)現(xiàn),包括建立
    發(fā)表于 05-11 20:20 ?30次下載

    如何使用Python繪制PDF文件教程詳細(xì)說(shuō)明

    文檔的主要內(nèi)容詳細(xì)介紹的是如何使用Python繪制PDF文件教程詳細(xì)說(shuō)明。
    發(fā)表于 08-27 11:48 ?12次下載
    如何使用<b class='flag-5'>Python</b>繪制<b class='flag-5'>PDF</b>文件教程詳細(xì)說(shuō)明

    如何使用python實(shí)現(xiàn)批量刪除文件名中的未知字符

    文檔的主要內(nèi)容詳細(xì)介紹的是如何使用python實(shí)現(xiàn)批量刪除文件名中的未知字符。
    發(fā)表于 10-28 16:54 ?16次下載
    如何使用<b class='flag-5'>python</b>實(shí)現(xiàn)<b class='flag-5'>批量</b>刪除文件名中的未知字符

    基于Python-casacore的射電測(cè)量集文件生成方法

    基于Python-casacore的射電測(cè)量集文件生成方法(開關(guān)電源技術(shù)試卷)-該文檔為基于Python-casacore的射電測(cè)量集文件生成
    發(fā)表于 09-15 13:11 ?3次下載
    基于<b class='flag-5'>Python</b>-casacore的射電測(cè)量集文件<b class='flag-5'>生成</b>方法

    Python編程入門》.pdf

    Python編程入門》.pdf
    發(fā)表于 02-11 16:03 ?0次下載

    python生成器是什么

    python生成器 1. 什么是生成器? 生成器(英文名 Generator ),是一個(gè)可以像迭代器那樣使用for循環(huán)來(lái)獲取元素的函數(shù)。 生成
    的頭像 發(fā)表于 02-24 15:53 ?3714次閱讀

    如何用Python自動(dòng)套用模板批量生成PDF文檔

    今天就給大家講講如何用Python自動(dòng)套用模板批量生成PDF文檔。 1.準(zhǔn)備 開始之前,你要確保Pyt
    的頭像 發(fā)表于 10-17 10:54 ?1037次閱讀
    如何用<b class='flag-5'>Python</b>自動(dòng)套用模板<b class='flag-5'>批量</b><b class='flag-5'>生成</b><b class='flag-5'>PDF</b><b class='flag-5'>文檔</b>

    如何用Python自動(dòng)套用模板批量生成PDF文檔

    辦最高效的事。 今天就給大家講講如何用Python自動(dòng)套用模板批量生成下方這樣的PDF文檔。 1.準(zhǔn)備 開始之前,你要確保
    的頭像 發(fā)表于 10-31 10:56 ?1678次閱讀
    如何用<b class='flag-5'>Python</b>自動(dòng)套用模板<b class='flag-5'>批量</b><b class='flag-5'>生成</b><b class='flag-5'>PDF</b><b class='flag-5'>文檔</b>

    Python中Excel轉(zhuǎn)PDF的實(shí)現(xiàn)步驟

    將Excel文件轉(zhuǎn)換為PDF可以方便儲(chǔ)存表格數(shù)據(jù),此外在打印或共享文檔時(shí)也能確保表格樣式布局等在不同設(shè)備和操作系統(tǒng)上保持一致。今天給大家分享一個(gè)使用第三方Python庫(kù)Spire.XLS for
    的頭像 發(fā)表于 11-20 15:02 ?1241次閱讀
    <b class='flag-5'>Python</b>中Excel轉(zhuǎn)<b class='flag-5'>PDF</b>的實(shí)現(xiàn)步驟

    能夠生成java文檔注釋的命令

    生成Java文檔注釋的命令是通過(guò)使用Java的自帶工具Javadoc來(lái)實(shí)現(xiàn)的。Javadoc是一個(gè)能夠從源代碼中提取注釋并生成文檔的工具。下面是使用Javadoc生成Java
    的頭像 發(fā)表于 11-29 14:12 ?906次閱讀

    PDF文件批量打印源代碼

    壓縮包中包含可批量打印PDF文件的Python代碼,可以借助PYcharm工具執(zhí)行,實(shí)現(xiàn)多PDF文件同時(shí)打印。
    發(fā)表于 08-08 14:26 ?0次下載
    百家乐实战路| 百家乐是娱乐场最不公平的游戏| 金城百家乐官网玩法| 真人百家乐技巧| 大发888游戏加速| 永利高百家乐开户| 赌场百家乐官网技巧| 大发888娱乐场ylc8| 百家乐博彩通| 皇冠百家乐官网的玩法技巧和规则 | K7百家乐官网的玩法技巧和规则 | 大发888娱乐方下载| 澳门百家乐棋牌游戏| 现场百家乐官网玩法| 真人百家乐官网信誉| 顶级赌场官网下载| 百家乐技巧开户| 百家乐官网的出千手法| 肃宁县| 金都娱乐| 百家乐7scs娱乐平台| 百家乐官网赌场方法| 百家乐官网是骗人的么| 星期八娱乐城| 全讯网官方| 百家乐节目视频| 澳门玩百家乐官网00| 至尊百家乐官网20130402| 百家乐官网娱乐皇冠世界杯| 苏州市| 司法| 红河县| 获嘉县| 库尔勒市| 博九娱乐城| 迭部县| 打牌网| 兰州市| 百家乐官网下载游戏| 真人百家乐官网好不好玩| 百家乐官网视频网络游戏|