Click here to Skip to main content
16,017,015 members

Comments by Sandip Dhage (Top 3 by date)

Sandip Dhage 16-Jun-10 8:53am View    
currently I m converting image into bitmap and using graphics object applying color matrix over it..
But doing this all image color is change but i want to change only color of real object in the image..
Following is the code i have done..
Plz correct my solution or suggest me other proper solution for it..

public static Bitmap setColour(string NewFileName)
{
ColorDialog cDia = new ColorDialog();
if (cDia.ShowDialog() == DialogResult.OK)
{

Graphics NewGraphics = Graphics.FromImage(NewBitmap);

float[][] FloatColorMatrix =
{
new float[] { float.Parse(cDia.Color.R.ToString())/255,0,0,0,0},
new float[] { 0,float.Parse(cDia.Color.G.ToString())/255,0,0,0},
new float[] { 0,0,float.Parse(cDia.Color.B.ToString())/255,0,0},
new float[] { 0,0,0,1,0 },
new float[] { 0.11F,0.0F,0.0F,0.0F,1}


};



ColorMatrix NewColorMatrix = new ColorMatrix(FloatColorMatrix);
ImageAttributes Attributes = new ImageAttributes();
Attributes.SetColorMatrix(NewColorMatrix, ColorMatrixFlag.Default, ColorAdjustType.Default);
NewGraphics.DrawImage(NewBitmap, new Rectangle(0, 0, NewBitmap.Width, NewBitmap.Height), 0, 0, NewBitmap.Width, NewBitmap.Height, System.Drawing.GraphicsUnit.Pixel, Attributes);
NewGraphics.Dispose();


}
return NewBitmap;
}

and returing bitmap is set to picturebox...
Sandip Dhage 16-Jun-10 5:50am View    
ok.........
Sandip Dhage 16-Jun-10 5:36am View    
Thanks Alison....
During coloring for image all image(including its background color) get colored with specific color but i want to color only real object in the image..
Please help me if u know...