private void BtnBlurred_Click(object sender, EventArgs e) { manipulated = ImageManipulations.MakeBlurry(original); currentManipulation = "_blurry"; pbManipulated.Image = manipulated; manipulationMade = true; }
public void BlurryWorks() { Color white = Color.FromArgb(255, 255, 255); Color black = Color.FromArgb(0, 0, 0); Color[,] assignColors = { { white, black, white }, { white, black, white }, { white, black, white } }; Bitmap original = CreateImage(3, 3, assignColors); Bitmap actual = ImageManipulations.MakeBlurry(original); // Om suddalgoritmen ovan har fungerat, så ska det inte finnas en enda pixel i testbilden // som är helt svart eller helt vit. Loopen nedan testar detta. for (int y = 0; y < actual.Height; y++) { for (int x = 0; x < actual.Width; x++) { int colorSum = actual.GetPixel(x, y).R + actual.GetPixel(x, y).G + actual.GetPixel(x, y).B; // En helt vit pixel är 255 * 3 = 765, medan en helt svart är 0. if (colorSum == 0 || colorSum == 765) { Assert.Fail(); } } } Assert.Pass(); }
static void Main(string[] args) { string path = null; if (args.Length > 0) { path = args[0]; } else { bool retry = false; string message = "Please enter the path to your image: "; string retryMessage = "\nCould not find image, please try again: "; while (!File.Exists(path)) { Console.Write(retry ? retryMessage : message); path = Console.ReadLine(); retry = true; } } Console.WriteLine("Working..."); Bitmap original; try { // Kolla om filen är en bildfil och tilldela isf den till "original" original = new Bitmap(path); } catch (ArgumentException) { Console.WriteLine("The file is not an acceptable format."); return; } if (original.Width >= 5000 || original.Height >= 5000) { Console.WriteLine("The image cannot be over 5000 pixels in height or width."); return; } Bitmap negative = ImageManipulations.MakeNegative(original); negative.Save(PathManipulations.EditFileName(path, "_negative")); Console.WriteLine("Negative saved"); Bitmap gray = ImageManipulations.MakeGray(original); gray.Save(PathManipulations.EditFileName(path, "_grayscale")); Console.WriteLine("Grayscale saved"); Bitmap blurry = ImageManipulations.MakeBlurry(original); blurry.Save(PathManipulations.EditFileName(path, "_blurred")); Console.WriteLine("The blurry image saved"); // Om vi inte har anledning att misstänka att en server använder programmet, // så låt den eventuella användaren läsa eventuella meddelanden innan programmet avslutas. if (args.Length == 0) { Console.WriteLine("\nPress any key to exit..."); Console.ReadKey(); } }