我查看了用于拆分.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

10-08 09:08
查看更多