Forum: Win32/Win64 API (native code)
by MicMic,
12. Feb 2020
Bin noch nicht dazu gekommen, werde es aber noch ausprobieren. Danke für den Beitrag/Source
Mike
Forum: Win32/Win64 API (native code)
by MicMic,
12. Feb 2020
Ich hab dieses Delphi 10.3. Da wird's wohl passen.
Wenn ich anfange "DrawText(" zu schreiben, gibt's dann auch eine Info für PWideChar.
Der Code ist nur für mich. Es sei denn ich verkaufe ihn für tausende von Euros :) Aber Danke für die Info
Forum: Win32/Win64 API (native code)
by MicMic,
9. Feb 2020
@Luckie
Hatte wohl überlesen, dass mit DT_CALCRECT der Text nicht gezeichnet, sondern nur das LPRECT geändert wird.
@Frühlingsrolle
Danke für den Code. Kurz mal eingefügt und probiert. Um es noch zu zentrieren, muss ich da wohl auch noch 1x mehr das Canvas.Font abändern. Also so in der Art wie in meinem Code da unten. Aber ich schau noch mal rüber...
Finde es nur doof, dass man Font.Size...
Forum: Win32/Win64 API (native code)
by MicMic,
9. Feb 2020
Hab jetzt gerechnet :)
t1 = Textbreite erster Teil
t2 = Textbreite zweiter Teil
tt = Speichere mir rect.left
Berechnung (für DT_LEFT, also selbst zentrieren):
rect.left = tt + (ceil(rect.width/2))-(ceil((t1+t2)/2));
Erster Teil mit DrawText ausgeben, dann Rect.Left mit t1 addieren und zweiten Teil mit neuem DrawText ausgeben.
Forum: Win32/Win64 API (native code)
by MicMic,
8. Feb 2020
Hallo,
die Funktion DrawText mit zwei Schriftgrößen zu versehen, geht natürlich nicht.
Ich habe mal eine Grafik angehängt, um mein Problem zu verdeutlichen.
In einem RECT Bereich (graue Fläche) möchte ich zentriert den Beispieltext (TextHB) anzeigen lassen. Die letzten beiden Zeichen (HB) etwas kleiner. Ich habe mal schnell meinen Text geteilt und nutze 2 x DrawText. Die Schrifteigenschaften...