Click here to Skip to main content
65,938 articles
CodeProject is changing. Read more.
Articles / Languages / C#

Change Opacity of Image in C#

4.91/5 (22 votes)
27 May 2011CPOL 119.8K   1  
A tip which enables you to change Opacity of Image in C#
This is a simple tip/trick which enables you to change Opacity of Image using C# by using System.Drawing and System.Drawing.Imaging NameSpaces.
Take a look at how ChangeOpacity(Image img, float opacityvalue) method will enable you to change opacity of Image.
In this given code, System.Drawing Namespace is used to access Bitmap and Graphics classes whereas System.Drawing.Imaging Namespaces is used to access ColorMatrix and ImageAttributes.
ChangeOpacity method has two parameters including img for Image on which opacity will apply, and opacityvalue for set opacity level of form.

using System;
using System.Drawing;
using System.Drawing.Imaging;

namespace ImageUtils
{
    class ImageTransparency
    {
        public static Bitmap ChangeOpacity(Image img, float opacityvalue)
        {
            Bitmap bmp = new Bitmap(img.Width,img.Height); // Determining Width and Height of Source Image
            Graphics graphics = Graphics.FromImage(bmp);
            ColorMatrix colormatrix = new ColorMatrix();
            colormatrix.Matrix33 = opacityvalue;
            ImageAttributes imgAttribute = new ImageAttributes();
            imgAttribute.SetColorMatrix(colormatrix, ColorMatrixFlag.Default, ColorAdjustType.Bitmap);
            graphics.DrawImage(img, new Rectangle(0, 0, bmp.Width, bmp.Height), 0, 0, img.Width, img.Height, GraphicsUnit.Pixel, imgAttribute);
            graphics.Dispose();   // Releasing all resource used by graphics 
            return bmp;
        }
    }
}


When you will use this method in your program to change opacity of an image in pictureBox control, you need to write code as given below:

MIDL
float opacityvalue = float.Parse(txtopacityvalue.Text) / 100;
pictureBox1.Image = ImageUtils.ImageTransparency.ChangeOpacity(Image.FromFile("filename"),opacityvalue);  //calling ChangeOpacity Function 


To learn how to use the given code in your program:
Click here[^] to download source code.

[Edited-"Adding Reference Link"]
Reference Article: There-Image Opacity Using C#[^]

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)