最近需要实现一个能够缩放并把图片处理成圆角 ,就像PS中的滤镜圆角效果。在网上找了好多资料,一直没找着好的解决方案,嘿嘿。
我本打算是想先用Graphic+GDI绘制出圆角矩形后,再把图片填充进去实现,但是没有成功。
因为本人水平有限Graphic又不是很熟,所以呵呵只能从网上找资源,找解决方案。终于找着一篇给了个解决方案的博客http://www.cnblogs.com/lovecherry/archive/2006/05/17/402541.html
我根据里面给的方法写了个类,用于实现功能,不过这个功能是通过切图片得到的,并不是我当时想的先画出圆角矩形后,再填充得到的。
但是能够实现功能啦O(∩_∩)O哈!
背景是用白色填充,这种图片在深色北京网站中就会显现出来,所以要是想吧图片在深色网站中显示的话,就要设置一下画布颜色了。
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Drawing;
using System.Drawing.Drawing2D;
using System.Drawing.Imaging;
/// <summary>
/// ImageOption 的摘要说明
/// </summary>
public class ImageOperation
{
/// <summary>
/// 圆角生成(但是只能是一个角)
/// </summary>
/// <param name="image">源图片 Image</param>
/// <param name="roundCorner">圆角位置</param>
/// <returns>处理好的Image</returns>
public static Image CreateRoundedCorner(Image image, RoundRectanglePosition roundCorner)
{
Graphics g = Graphics.FromImage(ima