通过保持宽高比nodejs将图像调整为精确大小
Resize image to exact size by maintaining aspect ratio nodejs
我想通过保持宽高比并使用 nodejs 以透明度填充空 space 来将图像调整为精确大小。
我可以使用 canvas 来完成。但是由于某些服务器 os 问题我无法使用 canvas.
我尝试使用 imageMagick 和 gm。但是找不到像这样的任何选项。请告诉我一个方法来做到这一点。
提前致谢。
在 ImageMagick 中,您可以通过
调整大小并填充到准确的大小
convert image -resize WxH -background none -gravity center -extent WxH output
输入:
这里我将背景设为黑色,这样你就可以看到是否填写了。
convert lena.jpg -resize 400x300 -background black -gravity center -extent 400x300 lena1.jpg
如果您成功使用 canvas 调整图像大小,您可以查看 https://github.com/Automattic/node-canvas 这个 repo。
如前所述,您还通过 NodeJS ( http://www.imagemagick.org/Usage/resize/ ) 中的进程使用 ImageMagick 调整图像大小
convert dragon.gif -resize 64x64 resize_dragon.gif
如果你有很多图片,我建议你写一个终端脚本(NodeJS 也可以实现)。
希望对您有所帮助,如果您有更多疑问,请随时提问。
我想通过保持宽高比并使用 nodejs 以透明度填充空 space 来将图像调整为精确大小。
我可以使用 canvas 来完成。但是由于某些服务器 os 问题我无法使用 canvas.
我尝试使用 imageMagick 和 gm。但是找不到像这样的任何选项。请告诉我一个方法来做到这一点。
提前致谢。
在 ImageMagick 中,您可以通过
调整大小并填充到准确的大小convert image -resize WxH -background none -gravity center -extent WxH output
输入:
这里我将背景设为黑色,这样你就可以看到是否填写了。
convert lena.jpg -resize 400x300 -background black -gravity center -extent 400x300 lena1.jpg
如果您成功使用 canvas 调整图像大小,您可以查看 https://github.com/Automattic/node-canvas 这个 repo。
如前所述,您还通过 NodeJS ( http://www.imagemagick.org/Usage/resize/ ) 中的进程使用 ImageMagick 调整图像大小
convert dragon.gif -resize 64x64 resize_dragon.gif
如果你有很多图片,我建议你写一个终端脚本(NodeJS 也可以实现)。
希望对您有所帮助,如果您有更多疑问,请随时提问。