![]() |
Zusammenfügen von Bildern beschleunigen
Hi,
so, nachdem ich nach langer Zeit wieder mal was mit Delphi mache, habe ich auch schon die erste Frage. :-D Die beiden folgenden Prozeduren fügen 2 Images senkrecht bzw. waagerecht aneinander. (Den Code habe ich hier irgendwo mal im forum aufgegabelt.)
Delphi-Quellcode:
Danach wird das Bild nach JPG gebracht und gespeichert.
procedure TfrmMain.DrawWaagerecht;
begin imgPreview.picture.assign(image1.picture.bitmap); imgPreview.Picture.Bitmap.Width := imgPreview.Picture.Bitmap.Width + image1.picture.bitmap.width; imgPreview.picture.Bitmap.Canvas.CopyRect(rect(image1.Picture.width,0,image2.picture.Width + image1.picture.width,image2.picture.height),image2.picture.bitmap.Canvas, rect(0, 0, image2.picture.width, image2.picture.Height)); end; procedure TfrmMain.DrawSenkrecht; begin imgPreview.Picture.Assign (Image1.Picture); with imgPreview.Picture.Graphic do Height := Height + Image2.Height; imgPreview.Canvas.Draw (0, Image1.Height, Image2.Picture.Graphic); end; Wenn ich jetzt das mit Bildern, die größer als 2000 * 2000 px sind, stürzt das Programm fast ab. Gibt es eine Möglichkeit das zu beschleunigen? Über Anregungen würde ich mich freuen. Chrissi91 |
Re: Zusammenfügen von Bildern beschleunigen
Zitat:
Ich hab keine Ahnung, was da schneller sein könnte, aber probieren könnte man es ja mal mit der Funktion bitblt :gruebel: Du kannst ja im Internet nochmal suchen, ob du noch einen Code findest (der dann vielleicht auch schneller [bei großen Bildern] arbeitet => evtl. bei den schweizern :?: ) |
Re: Zusammenfügen von Bildern beschleunigen
Danke für deine Antwort. Naja. Bei einem 2000px * 2000px Bild schließe ich das Programm nach 2 Minuten über den TaskManager. Nenn es wie du willst.
Hm .. Schweizer. Gutes Stichwort. Danke. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:24 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz