次の方法で共有


UNIFM_HDR構造体 (prntfont.h)

UNIFM_HDR構造は、 Unidrv フォント メトリック ファイル (.ufm ファイル) の内容を定義するために使用されます。

構文

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;

メンバー

dwSize

.ufm ファイルの合計サイズをバイト単位で指定します。 これは、ファイルの定義に使用されるすべての構造体の合計サイズであることに注意してください。 この値は、UNIFM_HDR構造体のサイズではありません。

dwVersion

prntfont.h で定義されているファイル バージョン番号を、名前形式が UNIFM_VERSION_x_x の定数で指定します

ulDefaultCodepage

フォントの既定のコード ページのコード ページ識別子を指定します。 詳細については、「解説」を参照してください。

lGlyphSetDataRCID

.gtt (グリフ変換テーブル) ファイルを識別するRC_GTTリソース識別子、または prntfont.h で定義されているCC_プレフィックス付きのコード変換識別子のいずれかを指定します。 詳細については、「解説」を参照してください。

loUnidrvInfo

.ufm (Unidrv Font Metrics) ファイルの先頭からファイルの UNIDRVINFO 構造体の場所までのバイト オフセットを指定します。

loIFIMetrics

.ufm ファイルの先頭からファイルのPRINTIFI32構造体の位置までのバイト オフセット 指定します。

loExtTextMetric

.ufm ファイルの先頭からファイルの EXTTEXTMETRIC 構造体の位置までのバイト オフセットを指定します。

loWidthTable

.ufm ファイルの先頭からファイルの WIDTHTABLE 構造体の位置までのバイト オフセットを指定します。

loKernPair

.ufm ファイルの先頭からファイルの KERNDATA 構造体の場所までのバイト オフセットを指定します。

dwReserved[2]

使用しません。

解説

UNIFM_HDR構造体は、.ufm ファイルに含まれる最初の構造体である必要があります。

lGlyphSetDataRCID がCC_DEFAULTされていない場合は、次の規則が適用されます。

  • lGlyphSetDataRCID にRC_GTTリソース識別子が含まれている場合、ulDefaultCodepage に指定するコード ページ番号は、.gtt (グリフ変換テーブル) ファイルの最初のUNI_CODEPAGEINFO構造体に含まれているコード ページ番号と同じである必要があります。

  • lGlyphSetDataRCID にCC_プレフィックス付きのコード変換識別子 (CC_DEFAULT以外) が含まれている場合、ulDefaultCodepage に指定されるコード ページ番号は、CC_プレフィックス付き識別子に関連付けられているコード ページ番号である必要があります。 (これらのコード ページ番号は Prntfont.h に表示され、各CC_プレフィックス付き識別子の横に表示されます)。

    Prntfont.h にリストされているシステムによって事前に定義された文字変換コードは、次のとおりです。

    //
    // 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.
    

lGlyphSetDataRCID がCC_DEFAULT場合、ulDefaultCodepage に指定された値に制限はありませんが、既定のコード ページを指定する必要があります。

要件

要件
Header prntfont.h (Prntfont.h を含む)

こちらもご覧ください

EXTTEXTMETRIC

KERNDATA

PRINTIFI32

UNIDRVINFO

UNI_CODEPAGEINFO

WIDTHTABLE