Freigeben über


NEWTEXTMETRICA-Struktur (wingdi.h)

Die NEWTEXTMETRIC Struktur enthält Daten, die eine physische Schriftart beschreiben.

Syntax

typedef struct tagNEWTEXTMETRICA {
  LONG  tmHeight;
  LONG  tmAscent;
  LONG  tmDescent;
  LONG  tmInternalLeading;
  LONG  tmExternalLeading;
  LONG  tmAveCharWidth;
  LONG  tmMaxCharWidth;
  LONG  tmWeight;
  LONG  tmOverhang;
  LONG  tmDigitizedAspectX;
  LONG  tmDigitizedAspectY;
  BYTE  tmFirstChar;
  BYTE  tmLastChar;
  BYTE  tmDefaultChar;
  BYTE  tmBreakChar;
  BYTE  tmItalic;
  BYTE  tmUnderlined;
  BYTE  tmStruckOut;
  BYTE  tmPitchAndFamily;
  BYTE  tmCharSet;
  DWORD ntmFlags;
  UINT  ntmSizeEM;
  UINT  ntmCellHeight;
  UINT  ntmAvgWidth;
} NEWTEXTMETRICA, *PNEWTEXTMETRICA, *NPNEWTEXTMETRICA, *LPNEWTEXTMETRICA;

Angehörige

tmHeight

Die Höhe (Abstieg + Abstieg) von Zeichen.

tmAscent

Der Aufstieg (Einheiten über der Basislinie) von Zeichen.

tmDescent

Der Abstieg (Einheiten unterhalb der Basislinie) von Zeichen.

tmInternalLeading

Die Menge der führenden (Leerzeichen) innerhalb der Grenzen, die vom tmHeight Member festgelegt werden. Akzentzeichen und andere diakritische Zeichen können in diesem Bereich auftreten. Der Designer kann dieses Element auf Null festlegen.

tmExternalLeading

Die Menge der zusätzlichen führenden (Leerzeichen), die die Anwendung zwischen Zeilen hinzufügt. Da sich dieser Bereich außerhalb der Schriftart befindet, enthält er keine Markierungen und wird nicht durch Textausgabeaufrufe im OPAQUE- oder TRANSPARENT-Modus geändert. Der Designer kann dieses Element auf Null festlegen.

tmAveCharWidth

Die durchschnittliche Breite von Zeichen in der Schriftart (im Allgemeinen definiert als Breite des Buchstabens x). Dieser Wert enthält keinen Überhang, der für Fett- oder Kursivzeichen erforderlich ist.

tmMaxCharWidth

Die Breite des breitesten Zeichens in der Schriftart.

tmWeight

Die Stärke der Schriftart.

tmOverhang

Die zusätzliche Breite pro Zeichenfolge, die einigen synthetisierten Schriftarten hinzugefügt werden kann. Bei der Synthesierung einiger Attribute, z. B. fett oder kursiv, muss die Grafikgeräteschnittstelle (GDI) oder ein Gerät möglicherweise eine Breite zu einer Zeichenfolge pro Zeichen und pro Zeichenfolge hinzufügen. GDI formatiert z. B. eine Zeichenfolge fett, indem der Abstand jedes Zeichens erweitert und durch einen Offsetwert überschreiben wird; Italicizes a font by shearing the string. In beiden Fällen gibt es einen Überhang über die grundlegende Zeichenfolge. Bei fett formatierten Zeichenfolgen ist der Überhang der Abstand, um den der Überstrike versetzt ist. Bei kursiv formatierten Zeichenfolgen ist der Überhang der Betrag, der am oberen Rand der Schriftart über dem unteren Rand der Schriftart gedreht wird.

Mit dem tmOverhang Member kann die Anwendung bestimmen, wie viel zeichenbreite von einem GetTextExtentPoint32 Funktionsaufruf für ein einzelnes Zeichen die tatsächliche Zeichenbreite und wie viel die zusätzliche Breite pro Zeichenfolge ist. Die tatsächliche Breite ist das Ausmaß abzüglich des Überhangs.

tmDigitizedAspectX

Der horizontale Aspekt des Geräts, für das die Schriftart entworfen wurde.

tmDigitizedAspectY

Der vertikale Aspekt des Geräts, für das die Schriftart entworfen wurde. Das Verhältnis der tmDigitizedAspectX und tmDigitizedAspectY Member ist das Seitenverhältnis des Geräts, für das die Schriftart entworfen wurde.

tmFirstChar

Der Wert des ersten Zeichens, das in der Schriftart definiert ist.

tmLastChar

Der Wert des letzten Zeichens, das in der Schriftart definiert ist.

tmDefaultChar

Der Wert des Zeichens, das durch Zeichen ersetzt werden soll, die sich nicht in der Schriftart befinden.

tmBreakChar

Der Wert des Zeichens, das zum Definieren von Wortumbrüchen für die Textbeschriftung verwendet werden soll.

tmItalic

Eine kursiv formatierte Schriftart, wenn sie nicht null ist.

tmUnderlined

Eine unterstrichene Schriftart, wenn sie nicht null ist.

tmStruckOut

Eine durchgestrichene Schriftart, wenn sie nicht null ist.

tmPitchAndFamily

Die Tonhöhe und Die Familie der ausgewählten Schriftart. Das Bit mit niedriger Reihenfolge (Bit 0) gibt den Schriftgrad an. Wenn es 1 ist, ist die Schriftart variabler Pitch (oder proportional). Wenn es 0 ist, ist die Schriftart feste Neigung (oder Monospace). Bits 1 und 2 geben den Schriftarttyp an. Wenn beide Bits 0 sind, ist die Schriftart eine Rasterschriftart; Wenn Bit 1 1 und Bit 2 0 ist, ist die Schriftart eine Vektorschriftart; wenn Bit 1 0 und Bit 2 festgelegt ist oder beide Bits 1 sind, ist die Schriftart ein anderer Typ. Bit 3 ist 1, wenn die Schriftart eine Geräteschriftart ist; andernfalls ist es 0.

Die vier bits mit hoher Reihenfolge bestimmen die Schriftartfamilie. Das tmPitchAndFamily Member kann mit dem hexadezimalen Wert kombiniert werden, 0xF0 mithilfe des bitweisen AND-Operators und kann dann mit den Schriftartfamiliennamen für eine identische Übereinstimmung verglichen werden. Weitere Informationen zu den Schriftartfamilien finden Sie unter LOGFONT.

tmCharSet

Der Zeichensatz der Schriftart.

ntmFlags

Gibt an, ob die Schriftart kursiv, unterstrichen, konturiert, fett usw. ist. Kann eine vernünftige Kombination der folgenden Werte sein.

Bit Name Bedeutung
0 NTM_ITALIC kursiv
5 NTM_BOLD kühn
8 NTM_REGULAR regelmäßig
16 NTM_NONNEGATIVE_AC keine Glyphe in einer Schriftart in irgendeinem Schriftgrad weist ein negatives A- oder C-Leerzeichen auf.
17 NTM_PS_OPENTYPE PostScript OpenType-Schriftart
18 NTM_TT_OPENTYPE TrueType OpenType-Schriftart
19 NTM_MULTIPLEMASTER Mehrere Masterschriftarten
20 NTM_TYPE1 Schriftart 1 eingeben
21 NTM_DSIG Schriftart mit digitaler Signatur. Dies ermöglicht die Rückverfolgbarkeit und stellt sicher, dass die Schriftart getestet wurde und nicht beschädigt ist.

ntmSizeEM

Die Größe des Em-Quadrats für die Schriftart. Dieser Wert befindet sich in notionalen Einheiten (d. a. die Einheiten, für die die Schriftart entworfen wurde).

ntmCellHeight

Die Höhe der Schriftart in notionalen Einheiten. Dieser Wert sollte mit dem Wert des ntmSizeEM-Elements verglichen werden.

ntmAvgWidth

Die durchschnittliche Breite von Zeichen in der Schriftart in notionalen Einheiten. Dieser Wert sollte mit dem Wert des ntmSizeEM-Elements verglichen werden.

Bemerkungen

Die letzten vier Elemente der NEWTEXTMETRIC Struktur sind nicht in der TEXTMETRIC Struktur enthalten; in allen anderen Punkten sind die Strukturen identisch.

Die Größen in der NEWTEXTMETRIC Struktur werden in der Regel in logischen Einheiten angegeben; d. h. sie hängen vom aktuellen Zuordnungsmodus des Anzeigekontexts ab.

Anmerkung

Der wingdi.h-Header definiert NEWTEXTMETRIC als Alias, der automatisch die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante auswählt. Das Mischen der Verwendung des codierungsneutralen Alias mit Code, der nicht codierungsneutral ist, kann zu Nichtübereinstimmungen führen, die zu Kompilierungs- oder Laufzeitfehlern führen. Weitere Informationen finden Sie unter Konventionen für Funktionsprototypen.

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Windows 2000 Professional [nur Desktop-Apps]
mindestens unterstützte Server- Windows 2000 Server [nur Desktop-Apps]
Header- wingdi.h (enthalten Windows.h)

Siehe auch

EnumFontFamilies

Schriftart- und Textstrukturen

Schriftarten und Textübersicht

GetTextExtentPoint32-

GetTextMetrics-

LOGFONT-