如何在不使用千兆字节的磁盘空间的情况下使用ImageMagick创建一个大的空白映像?
convert -debug All -size 100000x100000 canvas:white big_white.png这至少需要8GB的磁盘空间,因为它不会在ImageMagick策略磁盘设置为8GB的情况下运行。
发布于 2019-06-14 20:11:15
如果您的目标是创建一个100,000×100,000空白PNG,我将向您推荐libvips。与ImageMagick相比,它非常节省资源。
因此,要在终端中创建一个100000x100000像素的黑色PNG:
vips black black.png 100000 100000 --bands 3在我的机器上使用300 s,并使用227 my的RAM。我用以下方法测试:
/usr/bin/time -l vips black black.png 100000 100000 --bands 3如果你坚持要把它变成白色,你可以倒过来:
vips invert black.png white.png这需要360在我的机器和使用406 my的RAM。
相比之下,ImageMagick需要3300秒?GB的RAM来做同样的事情:
/usr/bin/time -l convert -size 100000x100000 canvas:white big_white.png顺便说一句,你应该更具体地说明你是想要灰度还是彩色PNG,托盘图像是否可以接受,你是想要8位/样本还是16位/样本。
https://stackoverflow.com/questions/56603376
复制相似问题