UNIFM_HDR-Struktur (prntfont.h)

Die UNIFM_HDR-Struktur wird verwendet, um den Inhalt von Unidrv-Schriftartmetrikendateien (.ufm-Dateien) zu definieren.

Syntax

typedef struct _UNIFM_HDR {
  DWORD dwSize;
  DWORD dwVersion;
  ULONG ulDefaultCodepage;
  LONG  lGlyphSetDataRCID;
  DWORD loUnidrvInfo;
  DWORD loIFIMetrics;
  DWORD loExtTextMetric;
  DWORD loWidthTable;
  DWORD loKernPair;
  DWORD dwReserved[2];
} UNIFM_HDR, *PUNIFM_HDR;

Member

dwSize

Gibt die Gesamtgröße der UFM-Datei in Bytes an. Beachten Sie, dass dies die Gesamtgröße aller Strukturen ist, die zum Definieren der Datei verwendet werden. Dieser Wert ist nicht die Größe der UNIFM_HDR-Struktur.

dwVersion

Gibt die Dateiversionsnummer an, wie in prntfont.h durch eine Konstante mit dem Namensformat UNIFM_VERSION_x_x definiert.

ulDefaultCodepage

Gibt den Codepagebezeichner für die Standardcodepage der Schriftart an. Weitere Informationen finden Sie im folgenden Abschnitt "Hinweise".

lGlyphSetDataRCID

Gibt einen RC_GTT Ressourcenbezeichner an, der eine GTT-Datei (Glyph Translation Table) oder einen der in prntfont.h definierten CC_ Codekonvertierungsbezeichner identifiziert. Weitere Informationen finden Sie im folgenden Abschnitt "Hinweise".

loUnidrvInfo

Gibt den Byteoffset vom Anfang der UFM-Datei (Unidrv Font Metrics) bis zum Speicherort der UNIDRVINFO-Struktur der Datei an.

loIFIMetrics

Gibt den Byteoffset vom Anfang der UFM-Datei bis zum Speicherort der PRINTIFI32-Struktur der Datei an.

loExtTextMetric

Gibt den Byteoffset vom Anfang der UFM-Datei bis zum Speicherort der EXTTEXTMETRIC-Struktur der Datei an.

loWidthTable

Gibt den Byteoffset vom Anfang der UFM-Datei bis zum Speicherort der WIDTHTABLE-Struktur der Datei an.

loKernPair

Gibt den Byteoffset vom Anfang der UFM-Datei bis zum Speicherort der KERNDATA-Struktur der Datei an.

dwReserved[2]

Wird nicht verwendet.

Bemerkungen

Eine UNIFM_HDR-Struktur muss die erste Struktur sein, die in einer UFM-Datei enthalten ist.

Wenn lGlyphSetDataRCID nicht CC_DEFAULT ist, gelten die folgenden Regeln:

  • Wenn lGlyphSetDataRCID einen RC_GTT Ressourcenbezeichner enthält, muss die für ulDefaultCodepage angegebene Codepagenummer dieselbe Codepagenummer sein, die in der ersten UNI_CODEPAGEINFO-Struktur der .gtt-Datei (Glyph Translation Table) enthalten ist.

  • Wenn lGlyphSetDataRCID einen der CC_ Codekonvertierungsbezeichner (außer CC_DEFAULT) enthält, muss die für ulDefaultCodepage angegebene Codepagenummer die Codepagenummer sein, die dem bezeichner mit CC_-Präfix zugeordnet ist. (Diese Codepagenummern sind in Prntfont.h neben jedem bezeichner mit CC_ Präfix aufgeführt.)

    Die vom System vordefinierten Zeichenkonvertierungscodes, die in Prntfont.h aufgeführt sind, sind wie folgt:

    //
    // System predefined character conversion
    //
    // UNIDRV is going to support  following system predefined character conversion.
    // By specifying these number in UNIFM.dwGlyphSetDataRCID;
    //
    
    #define CC_NOPRECNV 0x0000FFFF // Not use predefined
    
    //
    // ANSI
    //
    #define CC_DEFAULT  0 // Default Character Conversion
    #define CC_CP437   -1 // Unicode to IBM Codepage 437
    #define CC_CP850   -2 // Unicode to IBM Codepage 850
    #define CC_CP863   -3 // Unicode to IBM Codepage 863
    
    //
    // East Asia
    //
    
    #define CC_BIG5     -10 // Unicode to Chinese Big 5. Codepage 950.
    #define CC_ISC      -11 // Unicode to Korean Industrial Standard. Codepage 949.
    #define CC_JIS      -12 // Unicode to JIS X0208. Codepage 932.
    #define CC_JIS_ANK  -13 // Unicode to JIS X0208 except ANK. Codepage 932.
    #define CC_NS86     -14 // Big-5 to National Standard conversion. Codepage 950
    #define CC_TCA      -15 // Big-5 to Taipei Computer Association. Codepage 950.
    #define CC_GB2312   -16 // Unicode to GB2312. Codepage 936
    #define CC_SJIS     -17 // Unicode to Shift-JIS. Codepage 932.
    #define CC_WANSUNG  -18 // Unicode to Extended Wansung. Codepage 949.
    

Wenn lGlyphSetDataRCID CC_DEFAULT ist, gibt es keine Einschränkungen für den für ulDefaultCodepage angegebenen Wert, aber es muss eine Standardcodepage angegeben werden.

Anforderungen

Anforderung Wert
Header prntfont.h (prntfont.h einschließen)

Weitere Informationen

EXTTEXTMETRIC

KERNDATA

PRINTIFI32

UNIDRVINFO

UNI_CODEPAGEINFO

WIDTHTABLE