| 

.NET C# Java Javascript Exception

4
Wie zentriere ich unter GDI+ einen Text mit variabler Schrift, Schriftgröße und beliebigen Schriftattributen am einfachsten in einem rechteckigen, grafischen Ausgabebereich. Geht das Ermitteln der Textgröße nur mit der Methode Graphics.MeasureString? Laut Beschreibung ist das Ergebnis nicht genau: „Die 'MeasureString'-Methode ist für die Verwendung mit einzelnen Zeichenfolgen vorgesehen und enthält etwas zusätzlichen Platz für überhängende Symbole vor und hinter der Zeichenfolge,.. da zusätzlicher freier Platz für Sonderzeichen und sonstiges eingerechnet wird.“ Wie groß ist dieser Bereich? Ist er variabel oder wird er anhand des verwendeten Fonts angepasst? Und wie verhält sich die Methode, wenn Attribute übergeben werden, die von einer Schrift gar nicht bereitgestellt werden?
04.09.2013
Volker Nemm 391 1 7
1 Antwort
1
Die StringFormat Klasse sollte Deine Probleme lösen.
04.09.2013
ffordermaier 8,4k 3 9
Die StringFormat-Klasse erlaubt lediglich das Abrufen und Setzen bestimmter Formatierungseigenschaften. Einen Hinweis dazu, welcher zusätzlicher Platz via MeasureString einmgeräumt wird, finde ich darüber aber nicht. Ich denke es macht Sinn, Bezugswerte über serifenlose (z.B. Arial) und serifenbehaftete Schriften (z.B. Times New Roman) als Vergleichswerte heranzuziehen. Fehlende Attribute muss ich dann auch so erkennen, das ich die Ergebnisse zur MeasureString-Methode jeweils bei den Schriften mit unterschiedlichen Attributen vergleiche.
Volker Nemm 05.09.2013

Stelle deine .net-Frage jetzt!
TOP TECHNOLOGIES CONSULTING GmbH