c# – 如何使用imagemagick调整图像大小?
作者:互联网
当我使用imagemagick调整图像大小时,它显示为裁剪.
我使用下面的代码来调整图像大小
ImageMagickObject.MagickImage imgLarge = new ImageMagickObject.MagickImage();
object[] o = new object[] { "image_Input.jpg", "-resize", size, "-gravity", "center", "-colorspace", "RGB", "-extent", "100x100", "image_Output.jpg" };
imgLarge.Convert(ref o);
在调整图像大小之前,请参见下图
图像调整大小后,请参见下图,如下所示
我确实希望调整大小的图像显示完整图像,如图所示重新调整大小.
在我的输出图像中它变得像裁剪未显示的输入图像的完整视图..我怎么办?
解决方法:
我想这是因为你使用以下参数:
-gravity center -extent 100x100
以上参数与ImageMagick交谈:“请从我的图像中心提取大小为100×100的区域.有关详细信息,请阅读command line options documentation.
因此,关注args:
image_Input.jpg -resize 100x100 image_Output.jpg
从我的实践:
我没有使用.net的图像magick包装器,因为它是32位(至少半年前)并且它导致不同的问题.
通常在Web应用程序中通常只需要两个操作:
1.Resize
2.Crop
上面的命令只使用一个exe文件:convert.exe.
所以我做了一个小包装器,它运行带有参数的convert.exe.
MB稍后我在这里发布github url到包装项目,如果有人对它感兴趣的话.
标签:c,image-resizing,imagemagick,image-manipulation 来源: https://codeday.me/bug/20190630/1339575.html