我正在使用graphicsmagick 将图像大小调整为缩略图,但它添加了白色的周围边框填充。
我使用的命令是:
gm 转换矩阵.jpg -resize "80x80>"-重力中心 -extent 80x80 缩略图.jpeg
如您所见,图像周围有一些白色填充,但我不想要这样。理想情况下,我希望(整个图像而不仅仅是其中的一部分)填充所需的 80x80 输出尺寸。
如何在 imagemagick 或graphicsmagick 中实现这一点?
最佳答案
我使用 ImageMagick this image 。该解决方案需要知道输入图像的大小。
输入
该图像水平有 145 像素,垂直有 200 像素。
裁剪
从图像顶部裁剪:
convert -crop 145x145+0+0 -resize 80x80 matrix.jpg thumbnail.jpeg
我使用145x145
来从原始图像中提取一个正方形。 +0+0
是提取的正方形的偏移量,即左上角。
以图像中心裁剪:
convert -crop 145x145+0+27 -resize 80x80 matrix.jpg thumbnail.jpeg
垂直偏移设置为 27
因为我们必须删除顶部或底部的 55
(200 - 145
) 像素,所以我们需要删除顶部 27 (55 ÷ 2
) 像素和底部 28 像素。
裁剪图像底部:
convert -crop 145x145+0+55 -resize 80x80 matrix.jpg thumbnail.jpeg
调整大小而不裁剪
convert -resize 80x80\! matrix.jpg thumbnail.jpeg
!
flag (按照文档中的建议使用 \!
转义)在 resize
参数强制 ImageMagick 忽略宽高比之后。
关于image - 使用graphicsmagick或imagemagick调整图像大小,使其周围没有空白,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24299938/