Frage

Ich rufe die Win32 DrawText Funktion einen Text in einem Gerätekontext ausgibt. Der Text ist lang und wickelt gut auf eine zweite Linie. Das Problem ist, ich brauche den Abstand zwischen den Zeilen ein bisschen (I die Zeilenhöhe verringern erraten?) Zu verringern. Alle Ideen, wie dies zu tun?

Ich würde nur DrawText zweimal anrufen (eine für jede Zeile), aber dann habe ich meinen eigenen Zeilenumbruch tun.

Gibt es eine andere Art und Weise?

Danke

War es hilfreich?

Lösung

Eine Möglichkeit ist, den Text in einen behinderten Rich-Edit Control zu setzen. Ich denke, das gibt Ihnen viel Kontrolle über die Formatierung.

Wenn Sie eine eigene Zeilenumbruch schreiben Sie, werden Sie wahrscheinlich verwenden möchten GetTextExtentExPoint () zum Messen, wie viel in jeder Zeile passen.

Andere Tipps

Es ist schon eine ganze Weile her, seit ich mit diesem auf Win32 behandelt, aber ich glaube, dass die Schrift selbst den „erwarteten“ definiert Abstand durch die Definition von leeren Raum unter dem Zeichen. DrawText verwendet diese voll „Höhe die nächste Zeile, wenn Verpackung zu positionieren. Wenn Sie etwas tun wollen, die mit dieser Dimensionierung nicht in Ausrichtung ist, glaube ich, werden Sie Ihre eigene Verpackung Berechnungen und mehrere DrawText zu tun haben () Anrufe.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top