Okay nach nem bisschen rumspiele und noch ein paar Probleme, klappst jetzt.
Das ganze wird in 3 schritten gemacht
1) .jpg --> .bmp
2) .bmp croppen
3) .bmp --> .jpg
Quick&Dirty sieht das dann so aus
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33:
| var dest,source: Trect; jpeg: TJPEGImage; bmp: TBitmap; begin jpeg := TJPEGImage.Create; jpeg.CompressionQuality := 100; jpeg.LoadFromFile(Listbox1.Items[Listbox1.ItemIndex]); bmp := TBitmap.Create; bmp.Assign(jpeg);
dest.TopLeft.X := 0; dest.TopLeft.Y := 0; dest.BottomRight.x := 419; dest.BottomRight.Y := 306; source.TopLeft.X := 31; source.TopLeft.Y := 71; source.BottomRight.x := 450; source.BottomRight.Y := 377; image2.Picture.Bitmap :=bmp; image1.Canvas.CopyRect(dest,Image2.canvas,source); image1.Canvas.Refresh;
jpeg := TJPEGImage.Create; jpeg.CompressionQuality := 100; jpeg.Assign(image1.Picture.Graphic); jpeg.SaveToFile(Listbox1.Items[Listbox1.ItemIndex]); bmp.Free; jpeg.Free; end; |
Das ganze muss doch irgendwie kürzer gehen oder?