다음을 통해 공유


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

이름 형식이 UNIFM_VERSION_x_x인 상수로 prntfont.h에 정의된 파일 버전 번호를 지정합니다.

ulDefaultCodepage

글꼴의 기본 코드 페이지에 대한 코드 페이지 식별자를 지정합니다. 자세한 내용은 아래 설명 부분을 참조하십시오.

lGlyphSetDataRCID

.gtt(문자 모양 변환 테이블) 파일 또는 prntfont.h에 정의된 CC_ 접두사 코드 변환 식별자 중 하나를 식별하는 RC_GTT 리소스 식별자를 지정합니다. 자세한 내용은 아래 설명 부분을 참조하십시오.

loUnidrvInfo

.ufm(Unidrv 글꼴 메트릭) 파일의 시작 부분에서 파일의 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_ 접두사 식별자와 연결된 코드 페이지 번호여야 합니다. (이러한 코드 페이지 번호는 각 CC_ 접두사 식별자 옆에 Prntfont.h에 나열됩니다.)

    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에 지정된 값에는 제한이 없지만 기본 코드 페이지를 지정해야 합니다.

요구 사항

요구 사항
헤더 prntfont.h(Prntfont.h 포함)

추가 정보

EXTTEXTMETRIC

KERNDATA

PRINTIFI32

UNIDRVINFO

UNI_CODEPAGEINFO

WIDTHTABLE