我查看了用于拆分.TIFF文件的Split multi-page tiff with python文件,但是,老实说,我还没有完全理解答案,我希望对此进行一些说明。
我正在尝试获取其中包含多个发票的.Tif文件,并将其拆分为每个页面,然后将它们压缩并上传到数据库中。 PIL已安装在将要运行该程序的计算机上,因此我想坚持使用PIL库。我知道我可以在打开PIL后使用PIL查看诸如每个图像的大小之类的信息,但是当我尝试保存每个图像时,它会变得很简单。 (下面的示例代码)
def Split_Images(img,numFiles):
ImageFile = Image.open(img)
print ImageFile.size[0]
print ImageFile.size[1]
ImageFile.save('InvoiceTest1.tif')[0]
ImageFile.save('InvoiceTest2.tif')[1]
但是,当我运行此代码时,出现以下错误:
TypeError: 'NoneType' object has no attribute '__getitem__'
有什么建议么?
先感谢您,
最佳答案
您需要PIL图像“搜索”方法来访问不同的页面。
from PIL import Image
img = Image.open('multipage.tif')
for i in range(4):
try:
img.seek(i)
img.save('page_%s.tif'%(i,))
except EOFError:
break