INFO: Schriftarteigenschaften und die Verwendung eines negativen lfHeight

Veralteter Haftungsausschluss für KB-Inhalte

Dieser Artikel wurde für Produkte geschrieben, für die Microsoft keinen Support mehr anbietet. Deshalb wird dieser Artikel im vorliegenden Zustand bereitgestellt und nicht mehr aktualisiert.

Zusammenfassung

Die folgende Abbildung zeigt die am häufigsten Schriftart verwendeten Kennzahlen, einschließlich Zeichenhöhe mit negativen Werten jede Abbildung ausgewählten Notizen ergänzen die Metriken folgen.
 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

O O
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

/\
/ \
/ \
_ _ _ _ _ _ _ _ _ /______\ _ _ _ ___ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
/ \ / \|
/ \ | |
_ _ _ _ _ _ _ _ /_ _ _ _ _ _ \ _ \___/| _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
|
|
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\___/_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
|
|- External Leading
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _|_ _ _ _ _ _ _ _ _ _
|
O O |- Internal Leading
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _|_ _ _ _ _ _ _ _ _ _
| /\
| / \
| / \
| /______\ _ _ _ ___ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
Char Height -| / \ / \|
| / \ | |
| /_ _ _ _ _ _ \ _ \___/| _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
| |
| |
_ _ _ _ _ _ _|_ _ _ _ _ _ _ _ _ _\___/_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

| |
| O O |
| |
| /\ |
| / \ |
| / \ |- Ascent
Cell Height -| /______\ ___ |
| / \ / \| |
| / \ | | |
| /_ _ _ _ _ _ \ _ \___/| _ _ _ _ _ _ _ _ _|_ _ _ _ _ _ _ _
| | |
| | |- Descent
_ _ _ _ _ _ _|_ _ _ _ _ _ _ _ _ _\___/_ _ _ _ _ _ _ _ _ _|_ _ _ _ _ _ _ _

Höhe

Dies ist die Höhe auf positive LfHeight "LogFont" ausgewählt. Es ist die Höhe der Schriftart Bitmap für Rasterschriftarten. Es wird als TmHeight in der TEXTMETRIC von GetTextMetrics()zurückgegeben.

Zeichenhöhe (auch bekannt als Em)

Dies ist die Höhe auf negative LfHeight "LogFont" ausgewählt. (D. h. Mapper versucht, eine Schriftart, deren Zeichenhöhe der Absolute Wert der angeforderte Höhe entspricht.)


HINWEIS: definitionsgemäß Em entspricht Zellenhöhe abzüglich interne führen. Em definiert die Punktgröße der Schriftart. In MM_TEXT Zuordnungsmodus Em Punkt wie folgt bezieht sich auf:

   Em=dpiY*point_size/72;  // where dpiY is dots per inch in Y direction
DpiY einer Schriftart entspricht TmDigitizedAspectY in der TEXTMETRICS -Struktur.

Interne vorangestellte Leerzeichen

Wird zurückgegeben, wie TmInternalLeading in der TEXTMETRIC aus GetTextMetrics() und häufig, aber nicht notwendigerweise Speicherplatz innerhalb der Bitmap Schriftart diakritischen Zeichen (Umlaute) befindet.

Externe Abstand

Dies wird als TmExternalLeading in der TEXTMETRIC von GetTextMetrics() zurückgegeben und beschreibt, wie viel Platz Entwickler die Anwendung zwischen Zeilen der Schriftart erwartet. Ist nicht in der Bitmap enthalten und wird nicht von TextOut()geändert /ExtTextOut()auch in nicht TRANSPARENTEN Modus. Mehrere Textzeilen ausgeben, sollten die Zeilen voneinander getrennt werden (TmHeight + TmExternalLeading).

 Character Width                       Character Width
| |
|-------------| |-------------|
| | / / |
| | / / |
| | / / |
| | / / |
|----------| /----------/ |
| | / / |
| | / / |
| | / / |
| | / / |
|________|
|_____________| |_____________| |
| | Overhang
Character width Character width
(including white space) (including white space)
Overhang = 0 Overhang > 0

Überhang

TmOverhang gibt die pro Zeichenfolge zusätzliche Breite, die bei einigen synthetischen Schriftarten hinzugefügt werden. Wenn einige Attribute wie fett oder kursiv Synthetisierung GDI oder ein Gerät eventuell Breite eine Zeichenfolge auf Hinzufügen eine pro Zeichen und pro Zeichenfolge Basis. Z. B. GDI Embolding das Zeichenabstands und mit einem Offset Überstreichung synthetisiert und eine Schriftart durch neigen die Zeichenfolge formatieren.


In beiden Fällen ist Überhang über einfache Zeichenfolge. Bei fett formatierten Zeichenfolgen ist es den Abstand, den Überschreibmodus versetzt ist. Kursiv Zeichenfolgen ist es der Betrag, den Anfang der Schrift nach unten der Schriftart geneigt wird. TmOverhang ermöglicht die Anwendung fest, wie viel die Zeichenbreite für ein einzelnes Zeichen durch einen GetTextExtent() Aufruf zurückgegeben wird die tatsächliche Breite und wie viel die zusätzliche Breite pro eine Zeichenfolge. Die tatsächliche Breite ist soweit weniger Überhang. TmOverhang ist also die Differenz zwischen der Breite eines Zeichens einzeln und seine Breite auszugebenden wird in eine Zeichenfolge.


Weitere Informationen finden Sie unter den folgenden Themen im Windows Software Development Kit-Referenz:


  • CreateFont() (in Teil 1 des Verweises Version 3.0)
  • TEXTMETRIC (in Band 2 des Verweises Version 3.0)
Eigenschaften

Artikelnummer: 32667 – Letzte Überarbeitung: 10.01.2017 – Revision: 1

Feedback