Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Delphi Text auf Canvas ausrichten (https://www.delphipraxis.net/1234-text-auf-canvas-ausrichten.html)

Tpercon 3. Nov 2002 19:45


Text auf Canvas ausrichten
 
Wie kann ich Text auf ein Canvas zeichnen und diesen rechts untereinander ausrichten?

DrDangerous 3. Nov 2002 21:31

Hallo Tpercon,

Du kannst dafür die API-Funktion "DrawText" nutzen. Weitere Informationen findest Du unter der folgenden Adresse:
MSDN-Library :: DrawText.

:firejump:

Greeeeeeeeeeeeeeeetz,
DrDangerous

Daniel B 3. Nov 2002 21:38

[OT]
 
Hallo DrDangerous,

Zitat:

Zitat von DrDangerous der wild auf den Tasten rumschlug und
Greeeeeeeeeeeeeeeetz, DrDangerous

Deine e-Taste klemmt. :wink:

Grüsse, Daniel :hi:

Tpercon 4. Nov 2002 11:06

Hat jemand vielleicht nen Beispiel?
Ich tue mich da gerade ziemlich schwer.

theomega 4. Nov 2002 12:20

Hier mal ein Beispiel, dürfte klaro sein:
Code:
canvas.TextOut(0,50,'LINKS');

canvas.TextOut(form1.clientWidth-canvas.TextWidth('RECHTS'),100,'RECHTS');

canvas.TextOut(round((form1.ClientWidth - canvas.TextWidth('ZENTRIERT')) / 2),200,'ZENTRIERT');

Luckie 4. Nov 2002 12:23

DrawText

theomega 4. Nov 2002 12:59

noch ein kleiner Beipsiel:
Code:
procedure TForm1.Button1Click(Sender: TObject);
var h:HDC;
rec:TRect;
  Brush: HBRUSH; //  Handle für Brush
  Pen: HPEN; // Handle für Zeichenstift
begin
h := getdc(handle);
rec.TopLeft.X := 0;
rec.TopLeft.y := 50;

rec.BottomRight.X := 250;
rec.BottomRight.Y := 250;

Brush := CreateSolidBrush(RGB(255,255,255));
Pen := CreatePen(PS_SOLID, 1, RGB(0,0,0));

SelectObject(h, Brush);
SelectObject(h, Pen);

Rectangle (h,0,50,250,250);

drawtext(h,pchar('TEST'),4,rec,DT_CENTER+DT_VCENTER+DT_SINGLELINE);
end;
Zeichnet ein Rechteck und zentriert einen Text in die Mitte! Basiert auf Lukies Handle-Tut!

Luckie 4. Nov 2002 13:08

Wer ist Lukie? :shock: Muß ich den Typen kennen? :roll:

Tpercon 4. Nov 2002 20:04

Danke!

Das TextWidth kannte ich noch nicht, dadurch war die Lösung mit dem TextOut für mich nicht möglich! Jetzt geht's bestens!


Alle Zeitangaben in WEZ +1. Es ist jetzt 05:17 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz