Hi,
Ich will in einem Programm zum Bilderanzeigen die Größe der Bilder auf HD beschränken und dann speichern.
Code zum Bearbeiten und Speichern ist das hier:
Spoiler anzeigen
Dabei bekomm ich immer nen allgemeinen Fehler in GDI+ beim Speichern. Ich befürchte, weil ich das Bild im Programm quasi iwo geöffnet habe, aber ich weiß net wo.
Das Programm ist eine WPF Anwendung bei denen Images auf nem Fenster sind, deren Source der imgPath ist. Ansonsten speicher ich nur die Pfade und hab nirgens die Bildadtei wirklich geöffnet. Und der Fehler tritt auch auf, wenn die Images als Source noch null haben...
Ich will in einem Programm zum Bilderanzeigen die Größe der Bilder auf HD beschränken und dann speichern.
Code zum Bearbeiten und Speichern ist das hier:
Quellcode
- public static Image AdaptImage(Image oldImage)
- {
- if (oldImage.Height > Properties.Settings.Default.defaultHeight)
- {
- double FactorHeight = Properties.Settings.Default.defaultHeight / (double)oldImage.Height;
- int nWidth = Convert.ToInt32(FactorHeight * (double)oldImage.Width);
- oldImage = new System.Drawing.Bitmap(oldImage, nWidth, Convert.ToInt32(Properties.Settings.Default.defaultHeight));
- }
- if (oldImage.Width > Properties.Settings.Default.defaultWidth)
- {
- double FactorWidth = Properties.Settings.Default.defaultWidth / (double)oldImage.Width;
- int nHeight = Convert.ToInt32(FactorWidth * (double)oldImage.Height);
- oldImage = new System.Drawing.Bitmap(oldImage, Convert.ToInt32(Properties.Settings.Default.defaultWidth), nHeight);
- }
- return oldImage;
- }
Dabei bekomm ich immer nen allgemeinen Fehler in GDI+ beim Speichern. Ich befürchte, weil ich das Bild im Programm quasi iwo geöffnet habe, aber ich weiß net wo.
Das Programm ist eine WPF Anwendung bei denen Images auf nem Fenster sind, deren Source der imgPath ist. Ansonsten speicher ich nur die Pfade und hab nirgens die Bildadtei wirklich geöffnet. Und der Fehler tritt auch auf, wenn die Images als Source noch null haben...