【Python】如何用Python來操作PDF文件,建議收藏
1. 通過Python腳本來創(chuàng)建PDF文件
2. 加密或給PDF文件上鎖
3. 將多份PDF文件合并起來
4. 給PDF文件上水印
好,那就由小編一個(gè)一個(gè)來給大家演示看
我們首先來創(chuàng)建一個(gè)PDF文件,在下面的代碼當(dāng)中我們是用“reportlab”的模塊,要是該模塊沒有被安裝的話,可以通過下面的命令行來進(jìn)行安裝
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple reportlab然后創(chuàng)建PDF文件的代碼,在文件當(dāng)中輸入“Hello World”內(nèi)容,默認(rèn)的輸入是從左上角開始輸入,
from reportlab.pdfgen import canvasreport = canvas.Canvas("file1.pdf")report.drawString(50, 800, "This is an example for Medium")report.save()
有一些PDF文件當(dāng)中有重要的內(nèi)容,需要將其加密、上鎖,我們可以通過以下的代碼來實(shí)現(xiàn),用到的密碼是“hello”,結(jié)果會(huì)新生成一個(gè)加密過后的PDF文件叫做“new_encrypted.pdf”,代碼如下
from PyPDF2 import PdfFileReader, PdfFileWriterencrypted_file = PdfFileWriter()original = PdfFileReader("棉花.pdf")number_of_pages = original.numPagesfor i in range(number_of_pages):page = original.getPage(i)encrypted_file.addPage(page)password = "hello"encrypted_file.encrypt(password)with open("new_encrypted.pdf", "wb")as file:encrypted_file.write(file)
下面,我們將通過幾行Python的代碼來實(shí)現(xiàn)兩個(gè)PDF文件的合并,我們用到了“PdfFileMerger()”方法,代碼如下
from PyPDF2 import PdfFileReader, PdfFileMergerfirst_file = PdfFileReader("棉花.pdf")second_file = PdfFileReader("30歲將就.pdf")output = PdfFileMerger()output.append(first_file)output.append(second_file)output.write("new_merged.pdf")
有時(shí)候我們需要給PDF文件添加水印,原理是我們手上有兩個(gè)PDF文件,其中一個(gè)PDF文件是沒有水印的,另外一個(gè)是有水印的,我們將這兩個(gè)PDF文件合并,并且生成一個(gè)新的PDF文件
from PyPDF2 import PdfFileReader,PdfFileWriteroriginal_file = "file1.pdf"watermarked_pdf = "PDF_watermarked.pdf"output_file = "output.pdf"input_file = open(original_file, 'rb')input_pdf = PdfFileReader(input_file)watermark_file = open(watermarked_pdf, 'rb')watermark_pdf = PdfFileReader(watermark_file)watermark_page = watermark_pdf.getPage(0)pdf_page = input_pdf.getPage(0)pdf_page.mergePage(watermark_page)output = PdfFileWriter()output.addPage(pdf_page)output_file = open(output_file, 'wb')output.write(output_file)output_file.close()watermark_file.close()input_file.close()
往期精彩回顧 本站qq群851320808,加入微信群請(qǐng)掃碼:
評(píng)論
圖片
表情
