码迷,mamicode.com
首页 > 其他好文 > 详细

转:设置图片透明的四种方法

时间:2016-07-21 21:41:27      阅读:115      评论:0      收藏:0      [点我收藏+]

标签:

参照博文:http://blog.csdn.net/lexiaoyao20/article/details/6628830

最有效的一种方法:

矩阵法:

这个方法的效率最高。

 

    /// <summary>  
           /// 设置图片的透明度  
           /// </summary>  
           /// <param name="image">原图</param>  
           /// <param name="alpha">透明度0-255</param>  
           /// <returns></returns>  
           private Bitmap SetPictureAlpha(Image image,int alpha)  
           {  
               //颜色矩阵  
               float[][] matrixItems =  
               {  
                   new float[]{1,0,0,0,0},  
                   new float[]{0,1,0,0,0},  
                   new float[]{0,0,1,0,0},  
                   new float[]{0,0,0,alpha/255f,0},  
                   new float[]{0,0,0,0,1}  
               };  
               ColorMatrix colorMatrix = new ColorMatrix(matrixItems);  
               ImageAttributes imageAtt = new ImageAttributes();  
               imageAtt.SetColorMatrix(colorMatrix, ColorMatrixFlag.Default, ColorAdjustType.Bitmap);  
               Bitmap bmp = new Bitmap(image.Width, image.Height);  
               Graphics g = Graphics.FromImage(bmp);  
               g.DrawImage(image, new Rectangle(0, 0, image.Width, image.Height),  
                       0, 0, image.Width, image.Height, GraphicsUnit.Pixel, imageAtt);  
               g.Dispose();  
      
               return bmp;  
           }  

 

转:设置图片透明的四种方法

标签:

原文地址:http://www.cnblogs.com/candyzhmm/p/5692884.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!