Einzelnen Beitrag anzeigen

r29d43

Registriert seit: 18. Jan 2007
289 Beiträge
 
Delphi 10.4 Sydney
 
#6

Re: TCanvas maximale vertikale ausdehnung 32xxx Punkte ?

  Alt 8. Jun 2008, 18:30
Zitat von Delphi_Fanatic:
ich hab' das Gefühl, bei einem TCanvas, das auf einem Bildschirm dargestellt wird, ist ab 32xxx Pixels Schluss ist.
Ist das korrekt ?
Kann in der Vertikalen nichts mehr dargestellt werden, wenn die Y-Koordinate > ca. 32000 ist ?
In deinem Falle wird das wohl nur an einer Größenbeschränkung des TBitmaps liegen. Aber für das TCanvas an sich existiert dieses Limit nicht.

Legt man nämlich mal z.B. auf eine ScrollBox eine PaintBox (mit Align=alClient) und dehnt diese ScrollBox1 dann über ihre Properties "VertScrollBar.Range/HorzScrollBar.Range" auf jeweils z.B. 50000 Pixels aus, dann kann man sehr wohl mittels der Canvas auch in diese Bereiche reinzeichnen.

(...ist z.B. dann nötig, wenn ein (errechnetes Zoom-)Bild größer ist als der Screen. Dann baut man das dann ohnehin nur ausgebbare Teilbild in einem entsprechend kleineren Bitmap auf und läd dieses dann per BitBlt in den Bereich der PaintBox, welcher auch nur gerade in der ScrollBox angezeigt ist. Dabei ist der BitBlt-Ziel-Parameter auch die PaintBox1.Canvas und die Ziel-X/Y-Koordinaten dafür können ebenfalls größer als 32xxx sein.)



Übrigens, in Deinem Falle hättest Du auch mal versuchen können, das Bitmap.PixelFormat auf z.B. "pf1Bit" (also auf 1Bit/Pixel Tiefe) herunterzusetzen o.ä.. Sehr gut möglich, dass Du damit auch noch über dieses 32767-Limit hinausgekommen wärst.
  Mit Zitat antworten Zitat