尝试使用 Image.save(..save_all=True,append_images=[..]) 从 .tiff 页面列表中获取多页 .tiff 文档时出现问题
Issue when trying to get a multipage .tiff documents from a list of .tiff page using Image.save(..save_all=True,append_images=[..])
[自最初的问题以来,许多事情都得到了解决。请参阅下面的评论。最终文件仍然只包含第一页,我没有看到任何警告或错误消息]
我看到在 Pillow 的最新版本中添加了对保存多页图像的支持,尤其是。 TIFF im_all.save('test.tiff', save_all=True).
现在我不清楚我应该如何继续使用要放在一起的 .tiff 页面列表来创建多页 .tiff。我在文档中找不到示例或说明。我是否需要将每个图像调整为最终文档的大小?我用模式为“1”的 B&W .tiff 进行了天真的测试
list_im=[]
im_all=Image.new("1", (2500, 3500))
for i in list_file:
print i
im = Image.open(path_tmp+'/'+i)
print im.format, im.size, im.mode
list_im.append(im)
im.close()
im_all.save('test.tiff', save_all=True,append_images=list_im)
但我收到了错误消息
42526530005_632__0.tiff
TIFF (2445, 3472) 1
42526530005_632__1.tiff
TIFF (2448, 3474) 1
42526530005_632__2.tiff
TIFF (2451, 3471) 1
42526530005_632__3.tiff
TIFF (2454, 3471) 1
42526530005_632__4.tiff
TIFF (2459, 3471) 1
42526530005_632__5.tiff
TIFF (2467, 3472) 1
42526530005_632__6.tiff
TIFF (2452, 3471) 1
Traceback (most recent call last):
File "master_cost_claims_analyser.py", line 1401, in <module>
main()
File "master_cost_claims_analyser.py", line 1398, in main
args.all_steps)
File "master_cost_claims_analyser.py", line 565, in cost_claim_analyser_main
verbose)
File "H:/DATA/Projects and Documents/Projects/ClaimsCostAnalyzer/ClaimsCostAnalyzerCode/ClaimsExtraction/get_claims_functions.py", line 176, in get_claims
im_all.save('test.tiff', save_all=True,append_images=list_im)
File "C:\Program Files\Anaconda2\lib\site-packages\PIL\Image.py", line 1679, in save
save_handler = SAVE_ALL[format.upper()]
KeyError: 'TIFF'
我正在使用
python 2.7.12
枕头 3.2.0
有人知道我们如何在多页 .tiff 文档中保存 .tiff 页面列表吗?我想我做错了什么。
谢谢
法比恩
以下工作与此处建议的一样 link :
与 PIL.TiffImagePlugin.AppendingTiffWriter("./test.tiff",True) 作为 tf:<br>
对于 list_file 中的 tiff_in:
打开(tiff_in)作为tiff_in:
我= Image.open(tiff_in)
im.save(tf)
tf.newFrame()
我正在使用 pillow 4.0.0
[自最初的问题以来,许多事情都得到了解决。请参阅下面的评论。最终文件仍然只包含第一页,我没有看到任何警告或错误消息]
我看到在 Pillow 的最新版本中添加了对保存多页图像的支持,尤其是。 TIFF im_all.save('test.tiff', save_all=True).
现在我不清楚我应该如何继续使用要放在一起的 .tiff 页面列表来创建多页 .tiff。我在文档中找不到示例或说明。我是否需要将每个图像调整为最终文档的大小?我用模式为“1”的 B&W .tiff 进行了天真的测试
list_im=[]
im_all=Image.new("1", (2500, 3500))
for i in list_file:
print i
im = Image.open(path_tmp+'/'+i)
print im.format, im.size, im.mode
list_im.append(im)
im.close()
im_all.save('test.tiff', save_all=True,append_images=list_im)
但我收到了错误消息
42526530005_632__0.tiff
TIFF (2445, 3472) 1
42526530005_632__1.tiff
TIFF (2448, 3474) 1
42526530005_632__2.tiff
TIFF (2451, 3471) 1
42526530005_632__3.tiff
TIFF (2454, 3471) 1
42526530005_632__4.tiff
TIFF (2459, 3471) 1
42526530005_632__5.tiff
TIFF (2467, 3472) 1
42526530005_632__6.tiff
TIFF (2452, 3471) 1
Traceback (most recent call last):
File "master_cost_claims_analyser.py", line 1401, in <module>
main()
File "master_cost_claims_analyser.py", line 1398, in main
args.all_steps)
File "master_cost_claims_analyser.py", line 565, in cost_claim_analyser_main
verbose)
File "H:/DATA/Projects and Documents/Projects/ClaimsCostAnalyzer/ClaimsCostAnalyzerCode/ClaimsExtraction/get_claims_functions.py", line 176, in get_claims
im_all.save('test.tiff', save_all=True,append_images=list_im)
File "C:\Program Files\Anaconda2\lib\site-packages\PIL\Image.py", line 1679, in save
save_handler = SAVE_ALL[format.upper()]
KeyError: 'TIFF'
我正在使用 python 2.7.12 枕头 3.2.0
有人知道我们如何在多页 .tiff 文档中保存 .tiff 页面列表吗?我想我做错了什么。
谢谢
法比恩
以下工作与此处建议的一样 link :
与 PIL.TiffImagePlugin.AppendingTiffWriter("./test.tiff",True) 作为 tf:<br>
对于 list_file 中的 tiff_in:
打开(tiff_in)作为tiff_in:
我= Image.open(tiff_in)
im.save(tf)
tf.newFrame()
我正在使用 pillow 4.0.0