Thema: JPEG Error

Einzelnen Beitrag anzeigen

Redeemer

Registriert seit: 19. Jan 2009
Ort: Kirchlinteln (LK Verden)
1.051 Beiträge
 
Delphi 2009 Professional
 
#2

AW: JPEG Error

  Alt 8. Okt 2018, 23:21
myimg.Picture.Bitmap wird nicht freigegeben. myimg.Picture.Bitmap.Free(); kann man nicht aufrufen. Korrekt weist man Bilder mit myimg.Picture.Assign(Bild); zu, da wird das alte Bild gelöscht. Die Verwendung von TImage ist hier sowieso komplett fehl am Platze, ganz zu schweigen vom fehlenden try..finally. Da war ich jetzt aber zu faul für, das auch noch zu ergänzen.

Delphi-Quellcode:
Function SaveShotToStream(PIC: TBitmap): AnsiString;
var
   myjpg: TJPEGImage;
   mybmp: Graphics.TBitmap;
   mm: TMemoryStream;
begin

   mm := TMemoryStream.Create;

   myjpg := TJPEGImage.Create;

   myjpg.CompressionQuality := 50;
   myjpg.Compress;

   mybmp := GetScreenShot;

   myjpg.Assign(mybmp);

   mybmp.Free;

   myjpg.SaveToStream(mm);
 
   myImg.Free;
   myjpg.Free;
   mm.Free;

end;
Janni
2005 PE, 2009 PA, XE2 PA

Geändert von Redeemer ( 8. Okt 2018 um 23:26 Uhr)
  Mit Zitat antworten Zitat