Kann mir bitte auch mal jemand helfen. Ich wollte kein neues Thema aufmachen, weil es hier gut her passt und bestimmt jemand eine Antwort parat hat. Ich habe folgendes geschrieben. In
Image1 ist ein Bild drin (sichtbar). Aber meine jpg-Datei ist immer leer (0 Bytes).
Was ist bei mir falsch?
Delphi-Quellcode:
procedure TForm1.Button3Click(Sender: TObject);
Var
Jpg :TJPEGImage;
begin
If Not Assigned(Image1.Picture.Graphic) Then
MessageDlg('Kein Bild im Speicher',mtWarning,[mbOK],0)
Else
Begin
SaveDialog1.Execute;
If SaveDialog1.FileName='' Then
MessageDlg('Keine Datei ausgewählt',mtWarning,[mbOK],0)
Else
Begin
If ExtractFileExt(SaveDialog1.FileName)<>'.jpg' then
SaveDialog1.FileName:=SaveDialog1.FileName+'.jpg';
Jpg:=TJPEGImage.Create;
Jpg.Assign(Image1.Picture.Graphic); // Bild zuweisen
Jpg.CompressionQuality:= 12; // 1 mies, 100 am besten
Jpg.ProgressiveEncoding:= true; // Schrittweise Aufbau beim Laden
Jpg.PixelFormat:= jf8Bit; // jf24Bit oder jf8Bit
Jpg.Compress; // Bild komprimieren
Jpg.SaveToFile(SaveDialog1.FileName); // Abspeichern
Jpg.Free;
End;
End;
end;
Gruß, Alex