Einzelnen Beitrag anzeigen

Root2k

Registriert seit: 7. Jun 2011
Ort: Ulm
49 Beiträge
 
Delphi XE Enterprise
 
#1

Komplettes Canvas kopieren

  Alt 8. Mai 2012, 13:01
Hi,

ich habe gerade ein kleines Problem mit einem Canvas-Objekt einer TPaintbox.

Meine Ausgangssituation:
- Ich habe eine von TPaintbox abgeleitete Komponente.
- Ich zeichne auf die Canvas-Fläche der Paintbox.
- Nun soll die gesamte Zeichenfläche kopiert werden.

Das Problem:
- Es wird nur der sichtbare Teil des Canvas kopiert. Bzw. es wird auch ein Teil der äußeren Form mitkopiert (die eben teilweise über dem Canvas liegt).


Kann ich irgendwie dafür sorgen, dass alles kopiert wird?
Ich steht grad mächtig auf dem Schlauch.

Bin für jede Hilfe dankbar!

Derzeit kopiere ich die Fläche auf diese Weise (innerhalb der abgeleiteten Paintbox-Komponente):
Delphi-Quellcode:
  tmpZwischenBitmap := TBitmap.Create;
  tmpZwischenBitmap.Width := Self.Width; // Self.Width => Breite der Paintbox
  tmpZwischenBitmap.Height := Self.Height; // Self.Height => Breite der Paintbox
  r:=rect(0, 0, tmpZwischenBitmap.Width, tmpZwischenBitmap.Height);
  tmpZwischenBitmap.Canvas.CopyRect(r, Self.Canvas, r);
PS: Habe auch schon im Internet gesucht, aber nie eine passende Lösung gefunden.

Geändert von Root2k ( 8. Mai 2012 um 13:07 Uhr)
  Mit Zitat antworten Zitat