3 回答

TA貢獻(xiàn)1815條經(jīng)驗(yàn) 獲得超6個(gè)贊
給出的例子是:
zoom?=?2????#?zoom?factor mat?=?fitz.Matrix(zoom,?zoom) pix?=?page.getPixmap(matrix?=?mat,?<...>)
該問題還指出,如果您不使用矩陣,則默認(rèn)分辨率為 72 dpi,這可能解釋了您的分辨率較低的原因。

TA貢獻(xiàn)1802條經(jīng)驗(yàn) 獲得超10個(gè)贊
比制作矩陣更簡單,文檔顯示getPixmap()
您可以使用該dpi
參數(shù)來獲得更高分辨率:
pix?=?page.getPixmap(dpi=200)
這是從 v1.19.2 開始的新增內(nèi)容。

TA貢獻(xiàn)1810條經(jīng)驗(yàn) 獲得超5個(gè)贊
為了獲得最佳質(zhì)量,請使用“matrix”和“dpi”。該代碼解決了結(jié)果分辨率更高的問題。我實(shí)現(xiàn)了一個(gè)解決方案,以最佳質(zhì)量轉(zhuǎn)換文件夾中的所有文件:
# pip install fitz
# pip install pip install PyMuPDF==1.19.0
import fitz
import glob
for filename in glob.glob("*.pdf"):
pdffile = filename
doc = fitz.open(pdffile)
for page_index in range(doc.pageCount):
try:
page = doc.load_page(page_index)
zoom = 2
mat = fitz.Matrix(zoom, zoom)
pix = page.get_pixmap(matrix = mat,dpi=1200)
output = '_' + filename.replace(".pdf","") + "-" + str(page_index) + ".png"
pix.save(output)
except Exception as e:
print(str(filename) + ' > ' + str(e))
doc.close()
添加回答
舉報(bào)