Laden...

Font-darstellung und Breite setzen

Erstellt von marcom vor 16 Jahren Letzter Beitrag vor 16 Jahren 2.060 Views
M
marcom Themenstarter:in
123 Beiträge seit 2007
vor 16 Jahren
Font-darstellung und Breite setzen

Hallo zusammen!
Ich experimentier gerade mit den verschiedenen Möglichkeiten der System.Drawing Klasse herum und möchte folgendes erreichen:
angenommen, es soll dieser Text ausgegeben werden:

"0123456789" und
"0123456789"
(also in 2 Zeilen). Nun möchte ich aber, dass der obere Text die Fontgröße 12 Pt und der untere Text die Größe 16 Pt hat. Bis jetzt kein Problem, aber ich möchte, dass die einzelnen char's die gleiche Breite haben, sprich jeder Buchstabe des oberen Textes genau über dem jeweiligen Buchstaben des unteren Textes erscheint (ich benutze eine fixed-width font) - sprich das "Spacing" zwischen den Buchstaben soll beim oberen Text einfach etwas höher sein als unten. Ich habe mir die Klasse TextRenderer angeschaut sowie die Paint() Fkt. meines Controls (Panel) und DrawText() bzw. DrawString() bieten keine Möglichkeit, wie ich die Breite explizit setzen kann.
Ich möchte nicht unbedingt jeden char einzeln malen, aber ich denk mal so würde es auf jeden Fall funzen.

Bin für Tipps/Hinweise sehr dankbar!

Danke und Grüß

Mark

49.485 Beiträge seit 2005
vor 16 Jahren

Hallo marcom,

tja, wo man das einstellen kann, weiß ich auch nicht, aber ich kann dir schon mal sagen, wie das heißt, was du suchst: http://de.wikipedia.org/wiki/Laufweite . In CSS ist der englische Begriff dazu letter-spacing oder font-stretch.

herbivore

B
1.529 Beiträge seit 2006
vor 16 Jahren

Windows (bzw. GDI[+]) unterstützt letter-spacing nicht.
Daher muss das jedes Programm selbst machen. Deswegen sieht es auch in jedem Programm etwas anders aus...

I
1.739 Beiträge seit 2005
vor 16 Jahren

Nunja, wenn die Texte tatsächlich identisch sind, bei gleicher Schriftart, hilft die Anpassung der Breite der(kleineren) Schriftart(falls Proportion egal ist).
Falls nicht, dann geht es tatsächlich nur beinah Zeichenweise.