Zitat von
gasty:
Und gibt es einen Weg, die Datei gleich in eine jpeg umzuwandeln, da ~7mb pro Screen dann doch etwas viel sind?
Binde die
Unit "jpeg" ein (weiß nicht, ob die bei Delphi 7 schon dabei ist, wenn nicht, musst du sie erst runterladen). Dann konvertierst du das Bild vorm Speichern in ein TJPEGImage:
Delphi-Quellcode:
JPEGImage := TJPEGImage.Create;
JPEGImage.Assign(Bitmap);
JPEGImage.SaveToFile(...);
JPEGImage.Free;
Natürlich solltest du noch Ressourcenschutzblöcke verwenden.
Allerdings dazu noch etwas von meinem Senf: JPEG halte ich als Kompressionsformat aufgrund der Artefakte für Screenshots als weniger geeignet. PNG ist eigentlich derzeit IMO das optimale Format (*) für Screenshots (solange es sich nicht um Screenshots von Videos oder grafikintesniven Spielen handelt, natürlich). PNGs lassen sich mit Delphi eigentlich genau so einfach verarbeiten wie JPEGs, nur dass die
Unit pngimage und die Klasse TPNGObject heißt.
(*) Wenn man mal von dem sehr wenig verbreiteten JPEG-2000-Format absieht, das nach meiner Erfahrung noch etwas bessere Kompressionsraten hat.