Click here to Skip to main content
15,886,258 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
See more:
I am following this link:
http://www.switchonthecode.com/tutorials/csharp-tutorial-convert-a-color-image-to-grayscale
public static Bitmap MakeGrayscale(Bitmap original)
{
//make an empty bitmap the same size as original
Bitmap newBitmap = new Bitmap(original.Width, original.Height);

for (int i = 0; i < original.Width; i++)
{
for (int j = 0; j < original.Height; j++)
{
//get the pixel from the original image
Color originalColor = original.GetPixel(i, j);

//create the grayscale version of the pixel
int grayScale = (int)((originalColor.R * .3) + (originalColor.G * .59)
+ (originalColor.B * .11));

//create the color object
Color newColor = Color.FromArgb(grayScale, grayScale, grayScale);

//set the new image's pixel to the grayscale version
newBitmap.SetPixel(i, j, newColor);
}
}

return newBitmap;
}
I AM PASSING VALUES TO THIS METHOD AS:

protected void grayscale_Click(object sender, EventArgs e)
{
//Get the path of image file

string path = Image1.ImageUrl;

//create bitmap from path and pass as argument to function makegryscale2

Bitmap b = MakeGrayscale(new Bitmap(path.Substring(2)));

//overwrite with saving at same path

b.Save(path);

//set it imageurl

Image1.ImageUrl = path;

}
BUT it is giving me an error, the error says Invalid Parameter. plz let me know how can i use this method????
Posted
Updated 18-Aug-10 17:50pm
v2

1 solution

Which line are you getting this error in?
You cannot call grayscale_Click without passing in the right values.
 
Share this answer
 
v2
Comments
coderaug 19-Aug-10 0:04am    
I get error here:
Bitmap b = MakeGrayscale(new Bitmap(path.Substring(2)));
It says Invalid parameter is being passed..
It wants the complete path to be supplied... like when i give [path as c:\abc\ghk it works also, guide me how can i show the grayscal image after the method applies required modifications to it....
XTAL256 19-Nov-18 19:54pm    
path.Substring(2) will chop off the first 2 characters of path. Is this what you want? I would expect either the full path or just the file name (which would be relative to the current directory).

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



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900