仅使用C#在某些坐标上压缩和拉伸图像

时间:2014-07-14 13:13:54

标签: c# asp.net image-manipulation stretching

我需要以一定比例拉伸和挤压图像,如下图所示,可以使用asp.net C#执行此操作,还是有任何Image工具。

First one is the original image and second and third are the output images

1 个答案:

答案 0 :(得分:2)

使用imagemagick库找到解决方案,可以从here下载。

添加了对Magick.net dll的引用后,您可以使用以下代码扭曲图像,

double[] Points =  new double[] {
                0,0,                0,0,
                0,500,              50,500,
                0,1000,             0,1000,
                420,0,              420,0,
                420,500,            370,500,
                420,1000,           420,1000
            };
            MagickImage image = new MagickImage("E:/ImageManipulation/WebApplication2/images/Test.jpg");
            image.Distort(DistortMethod.Shepards,Points);
            image.Write("E:/ImageManipulation/WebApplication2/images/Result.jpg");

有关Shepards方法的更多示例,请参阅here