ImageMagick - 较小的调整大小的图像是一个更大的文件大小
Posted
技术标签:
【中文标题】ImageMagick - 较小的调整大小的图像是一个更大的文件大小【英文标题】:ImageMagick - Smaller resized image is a much larger file size 【发布时间】:2017-05-28 14:23:38 【问题描述】:在 ImageMagick 中,我正在运行:
convert -trim -density 200 myfile.tif -resize 70% myconvertedfile.png
如果我删除-resize 70%
,图像大小只有78,527
。
但是,当文件存储在70%
时,文件大小为860,504
是什么让较小的图像成为较大的文件大小,有没有办法在不损失质量的情况下减小文件大小?
【问题讨论】:
identify
为每个文件(输入和两个输出)报告什么?
分享 TIF 并告诉我们您的 IM 版本怎么样?
【参考方案1】:
由于在调整大小操作期间像素插值,您的较小图像很可能具有更多颜色。要在不添加颜色的情况下调整大小,请使用 -sample 70%
而不是 -resize 70%
。
【讨论】:
【参考方案2】:您的 tiff 可能会被压缩,Imagemagick,然后解压缩并输出到 png。生成的 png 压缩可能会产生比您的 tiff 压缩更大的文件大小。此外,tif 可能是 8 位颜色,但在调整大小时,它会获得新颜色,因此必须将 24 位颜色保存到 PNG 中。我怀疑是后者。
您还应该使用正确的 ImageMagick 语法,在应用设置和运算符之前读取输入图像。然而,ImageMagick 6 在这方面是宽容的。
convert myfile.tif -trim -resize 70% -density 200 myconvertedfile.png
如果您想要 8 位结果,则可以使用 PNG8:myconvertedfile.png 作为输出。
指定密度时,应指定单位。 PNG 仅存储每厘米像素的单位,但会将密度和每英寸像素转换为正确的每厘米像素。
您可以将 -resize 替换为 -sample,而不是将像素插入新值。 -sample 只会抓取每第 n 个像素。
【讨论】:
以上是关于ImageMagick - 较小的调整大小的图像是一个更大的文件大小的主要内容,如果未能解决你的问题,请参考以下文章
Xamarin UWP 应用程序不限制用户在 150(推荐)分辨率下将窗口大小调整为较小的大小