Hello everyone. I'm creating a little manipulation image software.
The problem is, when the process is ended, the memory doesn't unload, and later the program crashes.
public Image WatermarkImages(Image ImagetoWatermark, Image Watermark)
{
Bitmap imgBack = new Bitmap(ImagetoWatermark);
Bitmap imgWaterMark = new Bitmap(Watermark);
Graphics imgBackGraph = Graphics.FromImage(imgBack);
Point PointImagePos = WatermarkImagePosition(imgBack.Height, imgBack.Width, imgWaterMark.Height, imgWaterMark.Width);
Rectangle WaterMarkRectangle = new Rectangle(PointImagePos, new Size(imgWaterMark.Width, imgWaterMark.Height));
imgBackGraph.DrawImage(imgWaterMark, WaterMarkRectangle, 0, 0, imgWaterMark.Width, imgWaterMark.Height, GraphicsUnit.Pixel);
Image ImgtoReturn = imgBack;
return ImgtoReturn;
}
private void WatermarkImages
{
for (int i = 0; i < listBox1.Items.Count; i++)
{
FileInfo filename = new FileInfo(listBox1.Items[i].ToString());
string ImageFileName = filename.Name;
Image Img = WaterImage.WatermarkImages(Image.FromFile(filename.FullName), Image.FromFile(WatermarkImagePath));
Img.Save(folderBrowserDialog1.SelectedPath + "\\" + ImageFileName, System.Drawing.Imaging.ImageFormat.Jpeg);
Img.Dispose();
}
}
How I can repair this?
Thanks