![]() |
Kann man ein Canvas Zoomen ?
Hallo,
kann man ein Canvas in einer PaintBox strecken also eine Zoom Funktion ? Wenn ja... wie geht das denn nur ? Ich fummel da schon den ganzen Tag. Hier mal ein Bsp Code :
Delphi-Quellcode:
Wie kann man auf das ganze jetzt sagen wir einen Punkt im Zentrum bringen und einen irgendwo ausserhalb des Zentrum ( nur zum Testen ) und dann eine art zoom ausführen ?
procedure TForm1.FormCreate(Sender: TObject);
begin { Bitamp erzeugen } bmp := TBitmap.Create; { Hintergrundfarbe únd Stift dicke } bmp.Canvas.Brush.Color := clRed; bmp.Canvas.Pen.Width := 3; { Größe festlegen } bmp.Width := Paintbox1.Width; bmp.Height := Paintbox1.Height; end; procedure TForm1.Button1Click(Sender: TObject); begin { Rechteck zeichnen } bmp.Canvas.Ellipse(5,5, 10, 10); { OnPaint der Paintbox auslösen } PaintBox1.Repaint; end; procedure TForm1.FormDestroy(Sender: TObject); begin { Bitmap freigeben } bmp.Free; end; procedure TForm1.PaintBox1Paint(Sender: TObject); begin { bei Bedarf neu zeichnen } BitBlt(PaintBox1.Canvas.Handle, 0, 0, bmp.Width, bmp.Height, bmp.Canvas.Handle, 0, 0, SrcCopy); end; Meinetwegen mit 2 Buttons oder so. Mir gehts ja nur ums prinzip. Viele Dank ! Matthias |
Re: Kann man ein Canvas Zoomen ?
Entweder von Hand rechnen und mit StrechtBlt arbeiten oder aber eventuell hilft dir das:
![]() |
Re: Kann man ein Canvas Zoomen ?
|
Re: Kann man ein Canvas Zoomen ?
Dann war ich ja auf dem richtigen Weg. ;)
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:23 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