Xidus
Lieutenant
- Registriert
- Jan. 2011
- Beiträge
- 739
Hab ein Problem die Funktion die ich geschrieben hat läst den Ram voll laufen
Das Objekt b was zurück gegeben wird, wird wohl nicht gelöscht wenn ich es Manuel in den Quelltext einfüge (ohne Funktion) kann ich es mit Dispose() freigeben nur wie mach ich das wenn es ein return wert ist in ner Funktion
mfg Xidus
Code:
private static Bitmap resizeImage(Bitmap imgToResize, Size size)
{
int sourceWidth = imgToResize.Width;
int sourceHeight = imgToResize.Height;
float nPercent = 0;
float nPercentW = 0;
float nPercentH = 0;
nPercentW = ((float)size.Width / (float)sourceWidth);
nPercentH = ((float)size.Height / (float)sourceHeight);
if (nPercentH < nPercentW)
nPercent = nPercentH;
else
nPercent = nPercentW;
int destWidth = (int)(sourceWidth * nPercent);
int destHeight = (int)(sourceHeight * nPercent);
Bitmap b = new Bitmap(destWidth, destHeight);
Graphics g = Graphics.FromImage((Image)b);
g.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.HighQualityBicubic;
g.DrawImage(imgToResize, 0, 0, destWidth, destHeight);
g.Dispose();
return b;
}
Das Objekt b was zurück gegeben wird, wird wohl nicht gelöscht wenn ich es Manuel in den Quelltext einfüge (ohne Funktion) kann ich es mit Dispose() freigeben nur wie mach ich das wenn es ein return wert ist in ner Funktion
mfg Xidus