![]() |
Bild (JPEG oder BMP) für die Anzeige verkleinern
Hallo,
ich schreibe gerade ein Programm, das ein Bild bewegt und es von den Rändern "abprallen" lässt. Dazu habe ich die Möglichkeit eingebaut, ein beliebiges Bild zu laden (egal ob JPEG oder BMP). Dieses wird mit Image.Stretch := true verkleinert. Wenn es aber ein sehr großes Bild ist, wird die Geschwindikeit unheimlich langsam :gruebel: Deshalb suche ich eine Möglichkeit, das Bild nur für die Anzeige zu verkleinern. Beim klassichen StretchDraw werde ich mit "Bild kann nur verändert werden, wenn es einen Bitmap enthält" belohnt ;-) Danke, ManuMF [edit]GR32 wollte ich nicht verwenden, da das Programm auch auf anderen PCs compiliert werden können soll.[/edit] |
Re: Bild (JPEG oder BMP) für die Anzeige verkleinern
ähm... bitblt? aber das kann ja auch nicht gehen. evtl. ganz frech den DC vom dem image klauen?
EDIT: hat ein image einen Device Context oder is das wieder so was, was delphi selber auf die form zeichnet? |
Re: Bild (JPEG oder BMP) für die Anzeige verkleinern
also beim TImage ist das Problem das es sich bei jeder Anzeige neu malt. Wenn du also das form minimierst und wieder vergrößerst wird es neu gemalt und auch gestreckt. mit
Delphi-Quellcode:
kannst du das Bild in ein Bitmap wandeln und das Bitmap dann strecken.
Bitmap.Assign(JPEGImage);
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:28 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 by Thomas Breitkreuz