我试图使用PyMuPDF(fitz)从pdf中提取图像。我的pdf在单个页面上有多个图像。我在保存我的图像时维护适当的序列号。我发现提取的图像没有按照正确的顺序进行。有时它从底部开始提取,有时从顶部开始等等。有没有一种方法可以修改我的代码,使提取的顺序按照正确的顺序进行? 以下是我使用的代码:
import fitz
from PIL import Image
filename = "document.pdf"
doc = fitz.open(filename)
for i in range(len(doc)):
img_num = 0
p_no = 1
for img in doc.getPageImageList(i):
xref = img[0]
pix = fitz.Pixmap(doc, xref)
if pix.n - pix.alpha < 4:
img_num += 1
pix.writeImage("%s-%s.jpg" % (str(p_no),str(img_num)))
else:
img_num += 1
pix1 = fitz.Pixmap(fitz.csRGB, pix)
pix1.writeImage("%s-%s.jpg" % (str(p_no),str(img_num)))
pix1 = None
pix = None
p_no += 1
以下是pdf文件的示例页面:
(注:本文中的html标签已保留)