![]() |
Memo in Image.Canvas zeichnen?
Hi,
wie kann ich die Memo.Lines in das Cavas eines Images, mit samt den Tabs, zeichnen? Habs erst mal damit probiert: Image1.Canvas.TextOut(50,50,memo1.Text); 123 abc 123 abc sieht dann nur leider so aus: 123IIabcII123IIabc danke für Antworten. |
Re: Memo in Image.Canvas zeichnen?
Das müsste dann auch (abstand je nach Schriftgröße) in etwa so aussehen:
Delphi-Quellcode:
var
abstand, I: Integer; for I:=0 to Memo.Lines.Count-1 do Image.Canvas.Textout(x,Abstand*I,Memo.Lines[I]) // x z.B. 50 |
Re: Memo in Image.Canvas zeichnen?
Wenn du nur das Sichtbares in Memo kopieren willst, dann geht es so: (ungetestet ;))
Delphi-Quellcode:
var dc_M:cardinal;
begin dc_M := getdc(Memo1.handle); bitblt(image1.picture.bitmap.canvas.handle, 0,0,memo1.width, memo1.height, dc_M,0,0); releasedc(dc_M); end; |
Re: Memo in Image.Canvas zeichnen?
Liste der Anhänge anzeigen (Anzahl: 1)
Offensichtlich ungetestet ...
Also beim Bitblt fehlt am Ende noch als letzter Parameter "SrcCopy" Es heißt nur "Image1.Canvas.Handle" ohne den ganzen Kram dazwischen. Ich hab das ReleaseDc noch nicht benutzt, aber es müsste meiner Meinung nach "releaseDC(Form1.Handle,dc_M);" heißen. Ferner wird der Rand des Memos mit hineinkopiert, was nicht so wirklich schön aussieht. Und das ganze funktioniert nur einmal. (Da weiß ich zZ nicht warum und das ließe sich vermutlich auch beheben) |
Re: Memo in Image.Canvas zeichnen?
Danke für die Antworten.
Habs wie Jarmen_Kell gesagt hat gemacht. Hab da aber noch ne Frage: Wie kann ich jetzt noch die Font-Einstellung des Memos oder auch eines Labels, wenn ich beides auf ein cavas zeichne, übernehmen? MfG Masenko |
Re: Memo in Image.Canvas zeichnen?
So sollte es gehen:
Delphi-Quellcode:
Aber da die VCL dich vor Speicherlecks bewahren will, geht auch folgendes:
Canvas.Font.Assign(Memo.Font);
Delphi-Quellcode:
Dabei wird dann wieder Assign aufgerufen :wink: .
Canvas.Font := Memo.Font;
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:31 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