C#清晰的图片缩略方案_.net教程网 希望这篇文章能给对于需要经常生成缩略图的朋友提供帮助! 购吧网目前拥有4000余种商品,在售商品超过2000万,其中图片量截至目前已有8G。 购吧网前期的缩略算法用的是网略上广泛流传的三线性插值算法(效果并不是很好),代码如下:
此算法可以满足一般的网站的需求,但是作为一个电子商务网站,商品的图片的清晰度直接影响到消费都对此商品的购买欲望。 为了找到更好的方案,终于让我们找到了一个好的组件:MagickNet 这个组件是用C++写的,不过网络上已经有可用的C#调用版,文章的
MagickNet 的功能很多,我这里就贴出一下他的缩略方法的用法(MagickNet 的资料在网上很难早) using System; using System.Collections.Generic; using System.Text; namespace KeChenDLL { public class UploadFile { private string _path;//要处理的图片(原图)地址 public UploadFile(string path) { this._path = path; } private UploadFile() { } public void ReSize(int width, int height,string SaveToPath) { MagickNet.Image img = new MagickNet.Image(_path); img.Quality = 100; System.Drawing.Bitmap bitmap = new System.Drawing.Bitmap(_path); int x = bitmap.Width; int y = bitmap.Height; float rank = (float) x/y; if (x > y) { height =Convert.ToInt32(height / rank); } else { width =Convert.ToInt32(width * rank); } img.Resize(new System.Drawing.Size(width, height)); img.Write(SaveToPath); img.Dispose(); } } } 原创文字只代表本人某一时间内的观点或结论,本人不对涉及到的任何代码担保。转载请标明出处! |