Einzelnen Beitrag anzeigen

Katte

Registriert seit: 23. Nov 2005
Ort: Berlin
1 Beiträge
 
Delphi 6 Enterprise
 
#26

AW: Resample oder Resize mit GDI+

  Alt 27. Mai 2019, 16:50
@Schwedenbitter:
Auch wenn das Ganze schon uralt ist. Der oben abgebildete Source Code funktioniert so nur bedingt.

Sobald die Ergebnis-Bitmap größer als die Ursprungs-Bitmap wird, bekommt man eine schöne Windows Exception präsentiert. Das liegt daran, dass die Routine GdipDrawImageRect nicht prüft, ob die Destination auch genügend Speicherplatz bietet.

Eine möglich Lösung wäre:
1. Zuerst das Image GDI Objekt erstellen
2. Bitmap mit SetSize entsprechend der Ergebnisgröße setzen
3. Erst danach dipDrawImageRect(graphics, image, 0, 0, W, H) aufrufen!

Gruß,
Katte
  Mit Zitat antworten Zitat