Schrittweite von Text anpassen
-
Hallo zusammen,
ich möchte die Schrittweite eines Textes ändern den ich auf einem TCanvas mit TextOut(x,y,"Text") ausgebe. Bis jetzt hab ich leider noch nichts dazu gefunden. Im TFont gibt es, soweit ich weiss, auch nichts dazu.
Welche möglichkeiten gibt es?Ich benutze den BCB 6
-
Hallo
Da TextOut eine WinAPI-Funktion kannst du bestenfalls eine WinAPI-Lösung finden. Falls es keine gibt must du selber ein TextOut programmieren, das die einzelnen Zeichen mit einer neuen Schrittweite ausgibt.
bis bald
akari
-
Danke, aber wie erkenn ich in der Hilfe dass es sich um ein Objekt der Win-Api handelt?
Ich hab wahrscheinlich einen falschen Ausdruck benutzt. Ich will ein Wort/Text einfach in die breite Ziehen ohne das sich die Höhe ändert.
Muß ich dafür einen "breiten" Font auswählen oder kann ich das mit den Eigenschaften eines Fonts bewirken?
-
Hallo
Dadurch das er in der BCB-Hilfe entweder nicht vorhanden ist oder als WinAPI markiert ist. Außerdem benutzen WinAPI-Funktionen nur reine C-Typen, also zum Beispiel kein AnsiString sondern const char*.
Dann habe ich dein Problem falsch aufgefasst : Du brauchst nur den Text normal in ein eigenes TBitmap zu schreiben, und dann dieses mittels TCanvas::StretchDraw auf das eigentliche Zielcanvas zu kopieren.
bis bald
akari
-
Das klingt gut, danke!
btw, TextOut ist eben in der BCB-Hilfe vorhanden als eine Funktion von TCanvas.
-
Hallo
TCanvas::TextOut ruft intern auch nur WinAPI-TextOut auf.
bis bald
akari
-
Was ich oben schon meinte, das es also aus der Hilfe heraus nicht ersichtlich ist. Entweder man weiss es oder nicht, oder gibt es im BCB etwas?
-
Hallo,
Ich habs jetzt nicht probiert, aber könnte man dafür nicht einen angepassten Font erstellen und nutzen?
http://www.bytesandmore.de/rad/cpp/snipp/sc02012.php
http://msdn2.microsoft.com/en-us/library/ms534214.aspx
-
Funktioniert fein, danke!
Genau das was ich gesucht habe.Ps.: und immer schön TTF, True Type Fonts verwenden!