Python使用到第三方庫(kù)PyMuPDF圖片與pdf相互轉(zhuǎn)換
使用 Python 進(jìn)行圖片和pdf之間的相互轉(zhuǎn)換
使用到第三方庫(kù) PyMuPDF 在 python 環(huán)境下對(duì) PDF 文件的操作。
PDF 轉(zhuǎn)為圖片
需新建文件夾 pdf2png
import fitz
import glob
def rightinput(desc):
flag=True
while(flag):
instr = input(desc)
try:
intnum = eval(instr)
if type(intnum)==int:
flag = False
except:
print('請(qǐng)輸入正整數(shù)!')
pass
return intnum
pdffile = glob.glob("*.pdf")[0]
doc = fitz.open(pdffile)
flag = rightinput("輸入:1:全部頁(yè)面;2:選擇頁(yè)面\t")
if flag == 1:
strat = 0
totaling = doc.pageCount
else:
strat = rightinput('輸入起始頁(yè)面:') - 1
totaling = rightinput('輸入結(jié)束頁(yè)面:')
for pg in range(strat, totaling):
page = doc[pg]
zoom = int(100)
rotate = int(0)
trans = fitz.Matrix(zoom / 100.0, zoom / 100.0).preRotate(rotate)
pm = page.getPixmap(matrix=trans, alpha=False)
pm.writePNG('pdf2png/%s.png' % str(pg+1))
圖片合并為 PDF 文件
將所需合并的圖片放置與文件夾 pic2pdf 中。
import glob
import fitz
import os
def pic2pdf():
doc = fitz.open()
for img in sorted(glob.glob("pic2pdf/*")): # 讀取圖片,確保按文件名排序
print(img)
imgdoc = fitz.open(img) # 打開(kāi)圖片
pdfbytes = imgdoc.convertToPDF() # 使用圖片創(chuàng)建單頁(yè)的 PDF
imgpdf = fitz.open("pdf", pdfbytes)
doc.insertPDF(imgpdf) # 將當(dāng)前頁(yè)插入文檔
if os.path.exists("allimages.pdf"):
os.remove("allimages.pdf")
doc.save("allimages.pdf") # 保存pdf文件
doc.close()
if __name__ == '__main__':
pic2pdf()
好了今天為大家介紹的比較簡(jiǎn)單,希望大家能明天
相關(guān)文章
python實(shí)現(xiàn)txt文件格式轉(zhuǎn)換為arff格式
這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)txt文件格式轉(zhuǎn)換為arff格式的方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-05-05
Pyspider中給爬蟲(chóng)偽造隨機(jī)請(qǐng)求頭的實(shí)例
今天小編就為大家分享一篇Pyspider中給爬蟲(chóng)偽造隨機(jī)請(qǐng)求頭的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-05-05
詳解Django定時(shí)任務(wù)模塊設(shè)計(jì)與實(shí)踐
這篇文章主要介紹了詳解Django定時(shí)任務(wù)模塊設(shè)計(jì)與實(shí)踐,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-07-07
python程序主動(dòng)退出進(jìn)程的五種方式
對(duì)于如何結(jié)束一個(gè)Python程序或者用Python操作去結(jié)束一個(gè)進(jìn)程等,Python本身給出了好幾種方法,而這些方式也存在著一些區(qū)別,對(duì)相關(guān)的幾種方法看了并實(shí)踐了下,同時(shí)也記錄下,需要的朋友可以參考下2024-02-02
基于Python實(shí)現(xiàn)的車(chē)牌識(shí)別系統(tǒng)
本文將以基于Python的車(chē)牌識(shí)別系統(tǒng)實(shí)現(xiàn)為方向,介紹車(chē)牌識(shí)別技術(shù)的基本原理、常用算法和方法,并詳細(xì)講解如何利用Python語(yǔ)言實(shí)現(xiàn)一個(gè)完整的車(chē)牌識(shí)別系統(tǒng),需要的朋友可以參考下2023-10-10
Python使用函數(shù)輔助工具簡(jiǎn)化開(kāi)發(fā)提高效率
這篇文章主要為大家介紹了Python使用函數(shù)輔助工具簡(jiǎn)化開(kāi)發(fā)提高效率,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2024-01-01
pycharm配置anaconda環(huán)境時(shí)找不到python.exe的兩種解決辦法
如果你在Anaconda中創(chuàng)建了虛擬環(huán)境,但是無(wú)法找到python.exe,可能是因?yàn)樘摂M環(huán)境的Python路徑?jīng)]有添加到系統(tǒng)環(huán)境變量中,這篇文章主要給大家介紹了關(guān)于pycharm配置anaconda環(huán)境時(shí)找不到python.exe的兩種解決辦法,需要的朋友可以參考下2024-07-07

