IFIMETRICS 구조체(winddi.h)

IFIMETRICS 구조체는 GDI에서 사용할 수 있는 지정된 서체에 대한 정보를 정의합니다.

구문

typedef struct _IFIMETRICS {
  ULONG   cjThis;
  ULONG   cjIfiExtra;
  PTRDIFF dpwszFamilyName;
  PTRDIFF dpwszStyleName;
  PTRDIFF dpwszFaceName;
  PTRDIFF dpwszUniqueName;
  PTRDIFF dpFontSim;
  LONG    lEmbedId;
  LONG    lItalicAngle;
  LONG    lCharBias;
  PTRDIFF dpCharSets;
  BYTE    jWinCharSet;
  BYTE    jWinPitchAndFamily;
  USHORT  usWinWeight;
  ULONG   flInfo;
  USHORT  fsSelection;
  USHORT  fsType;
  FWORD   fwdUnitsPerEm;
  FWORD   fwdLowestPPEm;
  FWORD   fwdWinAscender;
  FWORD   fwdWinDescender;
  FWORD   fwdMacAscender;
  FWORD   fwdMacDescender;
  FWORD   fwdMacLineGap;
  FWORD   fwdTypoAscender;
  FWORD   fwdTypoDescender;
  FWORD   fwdTypoLineGap;
  FWORD   fwdAveCharWidth;
  FWORD   fwdMaxCharInc;
  FWORD   fwdCapHeight;
  FWORD   fwdXHeight;
  FWORD   fwdSubscriptXSize;
  FWORD   fwdSubscriptYSize;
  FWORD   fwdSubscriptXOffset;
  FWORD   fwdSubscriptYOffset;
  FWORD   fwdSuperscriptXSize;
  FWORD   fwdSuperscriptYSize;
  FWORD   fwdSuperscriptXOffset;
  FWORD   fwdSuperscriptYOffset;
  FWORD   fwdUnderscoreSize;
  FWORD   fwdUnderscorePosition;
  FWORD   fwdStrikeoutSize;
  FWORD   fwdStrikeoutPosition;
  BYTE    chFirstChar;
  BYTE    chLastChar;
  BYTE    chDefaultChar;
  BYTE    chBreakChar;
  WCHAR   wcFirstChar;
  WCHAR   wcLastChar;
  WCHAR   wcDefaultChar;
  WCHAR   wcBreakChar;
  POINTL  ptlBaseline;
  POINTL  ptlAspect;
  POINTL  ptlCaret;
  RECTL   rclFontBox;
  BYTE    achVendId[4];
  ULONG   cKerningPairs;
  ULONG   ulPanoseCulture;
  PANOSE  panose;
  PVOID   Align;
} IFIMETRICS, *PIFIMETRICS;

멤버

cjThis

이 구조체의 크기(바이트)를 지정합니다. 지정된 크기에는 이 구조체의 끝에 추가된 유니코드 문자열과 선택적 IFIEXTRA 구조체의 크기(바이트)가 포함됩니다.

cjIfiExtra

이 IFIMETRICS 구조체 뒤에 오는 IFIEXTRA 구조체의 크기(바이트)를 지정합니다. 값이 0이면 IFIEXTRA 구조체가 없음을 나타냅니다.

dpwszFamilyName

글꼴의 패밀리 이름(예: "Times Roman")을 포함하는 null로 끝나는 유니코드 문자열에 대한 오프셋(바이트)을 지정합니다. 일반적으로 이 문자열은 IFIMETRICS 구조체 바로 뒤를 따릅니다. 이 문자열은 Win32 LOGFONT 구조체의 lfFaceName 멤버에 기록된 이름과 동일해야 합니다.

dpwszStyleName

글꼴의 스타일을 설명하는 null로 끝나는 유니코드 문자열에 대한 오프셋(예: "Bold")을 바이트 단위로 지정합니다.

dpwszFaceName

글꼴의 고유하고 완전한 이름을 나타내는 null로 끝나는 유니코드 문자열에 대한 오프셋(바이트)을 지정합니다. 이름에는 글꼴의 패밀리 및 하위 이름(예: "Times New Roman Bold")이 포함됩니다.

dpwszUniqueName

글꼴의 고유 식별자를 나타내는 null로 끝나는 유니코드 문자열에 대한 오프셋(바이트)을 지정합니다(예: "Monotype:Times New Roman:1990").

dpFontSim

이 IFIMETRICS 구조체의 시작부터 글꼴이 지원하는 시뮬레이션을 설명하는 FONTSIM 구조체까지의 오프셋을 바이트 단위로 지정합니다. 드라이버는 글꼴이 굵게, 기울임꼴 또는 굵은 기울임꼴 시뮬레이션을 지원하는 경우에만 이 멤버를 0이 아닌 값으로 설정해야 합니다. 그렇지 않으면 드라이버가 0으로 설정해야 합니다.

글꼴이 의도적으로 기울임꼴인 경우 굵은 기울임꼴 시뮬레이션에 대한 글꼴 지원을 나타낼 수 있지만 드라이버는 기울임꼴 시뮬레이션에 대한 글꼴 지원을 나타내지 않아야 합니다. 마찬가지로, 글꼴이 의도적으로 굵게 표시되면 드라이버가 굵은 시뮬레이션에 대한 글꼴 지원을 나타내지 않아야 하지만 굵은 기울임꼴 시뮬레이션에 대한 글꼴 지원을 나타낼 수 있습니다. 글꼴이 굵고 기울임꼴인 경우 시뮬레이션을 지원하지 않아야 합니다.

FONTSIM 구조체의 오프셋은 FONTSIM 구조체의 베이스를 기준으로 합니다.

lEmbedId

글꼴의 포함 ID를 지정합니다. 이 값은 TrueType에 따라 지정되며 다른 모든 글꼴 공급자가 0으로 설정해야 합니다.

lItalicAngle

글꼴의 기울임꼴 각도를 지정합니다. 이 값은 TrueType에 따라 지정되며 다른 모든 글꼴 공급자가 0으로 설정해야 합니다.

lCharBias

문자 바이어스를 지정합니다. 이 값은 TrueType에 따라 지정되며 다른 모든 글꼴 공급자가 0으로 설정해야 합니다.

dpCharSets

이 IFIMETRICS 구조체의 시작부터 이 글꼴에서 지원하는 모든 Windows 문자 집합 목록이 포함된 배열까지의 오프셋을 지정합니다. 배열의 크기는 16바이트이며 항상 DEFAULT_CHARSET 종료됩니다. 배열의 첫 번째 값은 글꼴에서 가장 완벽하게 적용된 Windows 문자 집합을 식별해야 합니다. 이 값은 jWinCharSet에도 저장되어야 합니다. instance 경우 미국 ANSI 및 키릴 자모 문자 집합도 지원하는 일본어 글꼴인 경우 jWinCharSet을 SHIFTJIS_CHARSET 로 설정해야 하며 dpCharSets로 식별되는 배열에는 SHIFTJIS_CHARSET, ANSI_CHARSET, RUSSIAN_CHARSET, DEFAULT_CHARSET 포함됩니다.

이 글꼴이 둘 이상의 Windows 문자 집합을 지원하지 않는 경우 dpCharSets 를 0으로 설정해야 합니다.

jWinCharSet

이 글꼴에서 가장 잘 지원되는 문자 집합을 식별합니다. 글꼴이 단일 Windows 문자 집합만 지원하는 경우 드라이버는 해당 값을 jWinCharSet에 저장해야 합니다. 드라이버는 이 필드에 DEFAULT_CHARSET 저장해서는 안 됩니다. 이 멤버는 다음 값 중 하나일 수 있습니다.

의미
ANSI_CHARSET 이 글꼴은 Windows ANSI 문자 집합을 지원합니다.
ARABIC_CHARSET 이 글꼴은 아랍어 문자 집합을 지원합니다.
BALTIC_CHARSET 이 글꼴은 발트 문자 집합을 지원합니다.
CHINESEBIG5_CHARSET 이 글꼴은 중국어(Big 5) 문자 집합을 지원합니다.
EASTEUROPE_CHARSET 이 글꼴은 동유럽 문자 집합을 지원합니다.
GB2312_CHARSET 이 글꼴은 중국어 간체 문자 집합을 지원합니다.
GREEK_CHARSET 이 글꼴은 그리스어 문자 집합을 지원합니다.
HANGEUL_CHARSET 이 글꼴은 한국어(한글) 문자 집합을 지원합니다.
HEBREW_CHARSET 이 글꼴은 히브리어 문자 집합을 지원합니다.
JOHAB_CHARSET 이 글꼴은 한국어(Johab) 문자 집합을 지원합니다.
OEM_CHARSET 이 글꼴은 OEM 관련 문자 집합을 지원합니다. OEM 문자 집합은 시스템에 따라 다릅니다.
SHIFTJIS_CHARSET 이 글꼴은 Shift-JIS(일본 산업 표준) 문자 집합을 지원합니다.
SYMBOL_CHARSET 이 글꼴은 Windows 기호 문자 집합을 지원합니다.
RUSSIAN_CHARSET 이 글꼴은 키릴 자모 문자 집합을 지원합니다.
THAI_CHARSET 이 글꼴은 태국어 문자 집합을 지원합니다.
TURKISH_CHARSET 이 글꼴은 터키어 문자 집합을 지원합니다.
VIETNAMESE_CHARSET 이 글꼴은 베트남어 문자 집합을 지원합니다.

jWinPitchAndFamily

글꼴의 피치를 지정합니다. 두 개의 낮은 순서 비트는 글꼴의 피치를 지정하며 다음 값 중 하나일 수 있습니다.

의미
FIXED_PITCH 고정 피치 글꼴의 경우
VARIABLE_PITCH 가변 피치 글꼴의 경우
 

이 멤버의 비트 4~7은 글꼴 패밀리를 지정하며 다음 값 중 하나일 수 있습니다.

의미
FF_DECORATIVE 참신한 글꼴(예: 오래된 영어).
FF_DONTCARE 상관하거나 알 수 없습니다.
FF_MODERN 상수 스트로크 너비(고정 피치)가 있는 글꼴(세리프의 사용 여부) 고정 피치 글꼴은 일반적으로 Pica, Elite 및 Courier와 같은 최신 글꼴입니다.
FF_ROMAN 가변 스트로크 너비(비례 간격)와 세리프가 있는 글꼴(예: Times Roman, Palatino 및 Century Schoolbook).
FF_SCRIPT 스크립트 및 필기체와 같은 필기처럼 보이도록 디자인된 글꼴입니다.
FF_SWISS 가변 스트로크 너비(비례 간격)와 세리프가 없는 글꼴(예: Helvetica 및 Swiss).

usWinWeight

0에서 1000 범위의 글꼴 두께를 지정합니다(예: 400은 보통이고 700은 굵게 표시됨). 이 값은 Win32 LOGFONT 구조체의 lfWeight 멤버에 있는 애플리케이션에 제공됩니다.

flInfo

글꼴에 대한 추가 정보를 지정합니다. 이 필드는 다음 플래그 값의 조합일 수 있습니다.

FM_INFO_1BPP

문자 모양 비트맵의 색 깊이가 픽셀당 1비트임을 나타냅니다. Windows NT 첫 번째 버전인 Windows NT 3.1의 경우 이 플래그를 설정해야 합니다.

FM_INFO_4BPP

문자 모양 비트맵의 색 깊이가 픽셀당 4비트임을 나타냅니다. 글꼴이 16개 수준의 회색으로 앤티앨리어스된 문자 모양 비트맵을 지원하는 경우 드라이버는 이를 설정해야 합니다.

FM_INFO_8BPP

문자 모양 비트맵의 색 깊이가 픽셀당 8비트임을 나타냅니다. 현재 버전의 GDI는 색 글꼴을 지원하지 않으므로 이 설정을 무시합니다.

FM_INFO_16BPP

문자 모양 비트맵의 색 깊이가 픽셀당 16비트임을 나타냅니다. 현재 버전의 GDI는 색 글꼴을 지원하지 않으므로 이 설정을 무시합니다.

FM_INFO_24BPP

문자 모양 비트맵의 색 깊이가 픽셀당 24비트임을 나타냅니다. 현재 버전의 GDI는 색 글꼴을 지원하지 않으므로 이 설정을 무시합니다.

FM_INFO_32BPP

문자 모양 비트맵의 색 깊이가 픽셀당 32비트임을 나타냅니다. 현재 버전의 GDI는 색 글꼴을 지원하지 않으므로 이 설정을 무시합니다.

FM_INFO_90DEGREE_ROTATIONS

원래 개념 셰이프의 90도 회전에서 글꼴을 실현할 수 있음을 나타냅니다. GDI는 글꼴을 만들 때 드라이버에 전달된 디바이스 변환에 대한 개념적 회전을 포함하여 글꼴 회전을 요청합니다. 이 멤버는 FM_INFO_ARB_XFORMS 플래그가 설정되지 않은 경우에만 의미가 있습니다.

FM_INFO_ANISOTROPIC_SCALING_ONLY

글꼴이 임의 이방성 크기 조정만 지원한다는 것을 나타냅니다. 즉, 변환은 양의 실제 숫자를 곱한 대각선 행렬과 동일합니다. 이 플래그가 설정되면 FM_INFO_ARB_XFORMS 및 FM_INFO_ISOTROPIC_SCALING_ONLY 플래그를 설정할 수 없습니다. FM_INFO_90DEGREE_ROTATIONS 플래그도 설정된 경우 글꼴은 간단한 이방성 배율의 조합인 변환과 90도의 배수로 회전하는 변환을 지원합니다.

FM_INFO_ARB_XFORMS

2차원 선형 변환의 연속 범위에서 글꼴을 실현할 수 있음을 나타냅니다.

FM_INFO_CONSTANT_WIDTH

모든 실현에서 글꼴의 모든 문자 모양이 문자 증가의 동일한 값을 갖다는 것을 나타냅니다. 이 플래그가 설정되면 FM_INFO_OPTICALLY_FIXED_PITCH 플래그도 설정해야 합니다.

FM_INFO_DBCS_FIXED_PITCH

이 글꼴의 더블 바이트 문자가 고정 피치임을 나타냅니다. 단일 바이트 문자에 대해서는 아무 것도 암시되지 않습니다. 이 플래그는 Shift JIS와 같은 DBCS(더블 바이트 문자 집합)를 지원하는 글꼴에만 의미가 있습니다. DBCS를 지원하지 않는 글꼴은 이 플래그를 설정하면 안 됩니다.

FM_INFO_DO_NOT_ENUMERATE

이 글꼴은 Win32 EnumFontFamiliesEx, EnumFontFamilies 또는 EnumFonts 루틴으로 열거되지 않음을 나타냅니다. 또한 GetTextFace 에 대한 Win32 애플리케이션 호출로 반환된 문자열은 dpwszUniqueName 문자열에서 검색됩니다. 이 플래그를 사용하면 글꼴 공급자가 둘 이상의 IFIMETRICS 구조를 해당 글꼴 중 하나와 연결할 수 있습니다.

FM_INFO_DSIG

글꼴이 유니코드 표준을 준수하고 있음을 나타냅니다.

FM_INFO_FAMILY_EQUIV

IFIMETRICS의 dpwszFamilyName 오프셋이 실제로 동등한 패밀리 이름 또는 별칭 목록의 오프셋임을 나타냅니다. 이름은 기본 또는 실제 이름입니다. 후속 이름은 등가 또는 별칭입니다. 목록의 각 이름은 null로 종료됩니다. 목록이 0으로 종료됩니다.

<기본 이름><0<>별칭 1><0>...<별칭 n>
<0><0>

기반 이름은 매핑에만 사용됩니다. 열거되지 않습니다.

FM_INFO_IGNORE_TC_RA_ABLE

이 글꼴의 경우 TC_RA_ABLE 플래그가 무시됨을 나타냅니다.

FM_INFO_INTEGER_WIDTH

모든 문자 모양에 위반이 없는 사전 너비가 있음을 나타냅니다. 비트맵 글꼴은 일반적으로 이 플래그를 설정합니다.

FM_INFO_INTEGRAL_SCALING

글꼴을 x 방향과 y 방향 모두에서 정수 크기로 조정할 수 있음을 나타냅니다. 이 플래그가 설정되면 드라이버가 x 및 y 방향에서 정수 크기로 디바이스 변환에 대한 개념적 크기가 조정되는 경우 문자 모양을 렌더링할 수 있어야 합니다. GDI는 글꼴을 만들 때 드라이버에 전달된 개념적-디바이스 변환에 축 크기 조정을 포함하여 글꼴의 정수 크기 조정을 요청합니다. 이 플래그는 FM_INFO_ARB_XFORMS 플래그가 설정되지 않은 경우에만 의미가 있습니다.

FM_INFO_ISOTROPIC_SCALING_ONLY

글꼴이 임의 이방성 크기 조정만 지원한다는 것을 나타냅니다. 즉, 변환은 양의 실수에 곱한 ID 행렬과 동일합니다. 이 플래그가 설정되면 FM_INFO_ARB_XFORMS 또는 FM_INFO_ANISOTROPIC_SCALING_ONLY 플래그를 설정할 수 없습니다. FM_INFO_90DEGREE_ROTATIONS 플래그가 설정된 경우 글꼴은 등위 배율에 해당하는 변환과 90도의 배수로 회전을 지원합니다.

FM_INFO_OPTICALLY_FIXED_PITCH

이 글꼴이 고정 피치로 입력 체계로 간주됨을 나타냅니다. 이는 글꼴의 광학 품질이며 글꼴의 모든 문자 모양이 같은 문자 증분을 갖는다는 것을 반드시 나타내는 것은 아닙니다.

FM_INFO_NONNEGATIVE_AC

이 글꼴의 모든 문자 모양에 nnnegative a 및 c 간격이 없음을 나타냅니다. 즉, 문자 모양 블랙 박스는 문자 원점과 문자 연결 지점으로 경계가 지정된 영역 외부로 확장되지 않습니다.

FM_INFO_NOT_CONTIGUOUS

지원되는 문자 집합이 연속되지 않음을 나타냅니다.

FM_INFO_RETURNS_BITMAPS

글꼴에 유효한 디지털 서명이 포함되어 있음을 나타냅니다.

FM_INFO_RETURNS_OUTLINES

드라이버에서 지원하는 문자 모양에 대해 GDI는 해당 문자 모양의 윤곽선을 설명하는 PATHOBJ 구조를 요청할 수 있음을 나타냅니다. 가능하면 GDI의 경로 채우기 규칙을 사용하여 윤곽선을 채울 때 결과 비트맵은 드라이버에서 반환한 비트맵과 동일해야 합니다. FM_INFO_RETURNS_OUTLINES 및 FM_INFO_RETURNS_STOKES 플래그를 동시에 설정할 수 없습니다.

FM_INFO_RETURNS_STROKES

드라이버에서 지원하는 문자 모양에 대해 GDI는 문자 모양 스플라인을 설명하는 PATHOBJ 구조를 요청할 수 있음을 나타냅니다. 이 경로는 채울 수 없지만 문자 모양을 표시하도록 스트로크할 수 있습니다. FM_INFO_RETURNS_OUTLINES 및 FM_INFO_RETURNS_STOKES 플래그를 동시에 설정할 수 없습니다.

FM_INFO_RIGHT_HANDED

글꼴의 상승 방향이 기준 방향에서 시계 반대 방향으로 90도임을 나타냅니다. 상승 방향은 높이가 측정되는 방향이며 항상 기준 방향과 수직입니다.

FM_INFO_TECH_BITMAP

글꼴이 비트맵 글꼴임을 나타냅니다.

FM_INFO_TECH_CFF

글꼴이 CFF(Compact Font Format) 테이블을 포함하는 Pscript OpenType 글꼴임을 나타냅니다.

FM_INFO_TECH_MM

MM(다중 마스터) 글꼴임을 나타냅니다.

FM_INFO_TECH_OUTLINE_NOT_TRUETYPE

글꼴이 개요 경로를 사용하지만 TrueType을 기반으로 하지 않는 확장 가능한 글꼴 기술을 기반으로 했음을 나타냅니다. 이 플래그는 이 글꼴에 대해 반환된 경로를 채우거나 스트로크할지 여부를 지정하지 않습니다. 소비자는 이 정보에 대한 FM_INFO_RETURNS_STROKES 및 FM_INFO_RETURNS_OUTLINES 플래그를 검사해야 합니다.

FM_INFO_TECH_STROKE

글꼴이 스트로크된 글꼴 기술을 기반으로 했음을 나타냅니다. 이 플래그는 이 글꼴에 대해 반환된 경로를 채우거나 스트로크할지 여부를 지정하지 않습니다. 소비자는 이 정보에 대한 FM_INFO_RETURNS_STROKES 및 FM_INFO_RETURNS_OUTLINES 플래그를 검사해야 합니다.

FM_INFO_TECH_TRUETYPE

글꼴이 TrueType 글꼴임을 나타냅니다.

FM_INFO_TECH_TYPE1

이 글꼴이 PostScript 화면 글꼴(Type1 또는 OpenType PostScript)임을 나타냅니다.

fsSelection

다음 플래그의 조합을 지정합니다.

의미
FM_SEL_BOLD 글꼴의 문자가 굵게 표시되면 를 설정합니다.
FM_SEL_ITALIC 글꼴의 문자가 기울임꼴인 경우 를 설정합니다.
FM_SEL_NEGATIVE 글꼴의 문자에 전경 및 배경이 반전된 경우 를 설정합니다.
FM_SEL_OUTLINED 글꼴의 문자가 빈 경우 를 설정합니다.
FM_SEL_REGULAR 글꼴의 문자가 일반 가중치인지를 설정합니다.
FM_SEL_STRIKEOUT 글꼴의 문자가 기본적으로 쳐지는 경우 를 설정합니다. 그렇지 않으면 취소를 시뮬레이션해야 합니다.
FM_SEL_UNDERSCORE 글꼴의 모든 문자가 기본적으로 밑줄로 표시되면 를 설정합니다. 그렇지 않으면 밑줄을 시뮬레이션해야 합니다.

fsType

글꼴에 대한 글꼴 포함 및 라이선스 권한과 같은 글꼴의 특정 속성을 나타내는 TrueType별 비트 필드입니다. 포함 가능한 글꼴은 문서에 저장할 수 있습니다. 글꼴이 설치되지 않은 시스템(원격 시스템)에서 글꼴이 포함된 문서를 열면 임베딩 인식 애플리케이션을 통해 해당 시스템에서 임시(그리고 경우에 따라 영구적인) 사용을 위해 포함된 글꼴을 로드할 수 있습니다. 글꼴 공급업체는 라이선스 포함 권한을 부여합니다. 다음 플래그를 설정할 수 있습니다.

의미
FM_EDITABLE_EMBED 글꼴을 다른 시스템에 포함 및 일시적으로 로드할 수 있는지를 설정합니다. 편집 가능한 글꼴이 포함된 문서를 읽고 쓰기 위해 열 수 있습니다.
FM_READONLY_EMBED 읽기/쓰기 포함이 허용되지 않는 경우 를 설정합니다. "미리 보기 및 인쇄" 캡슐화만 허용됩니다. 이 비트를 설정하면 글꼴이 포함되고 원격 시스템에 일시적으로 로드될 수 있습니다. "미리 보기 및 인쇄" 글꼴이 포함된 문서는 "읽기 전용"으로 열어야 하며, 편집 내용을 문서에 적용할 수 없습니다.
FM_TYPE_LICENSED
FM_NO_EMBEDDING
글꼴이 제한된 라이선스 글꼴인지 설정합니다. 이 비트만 설정되면 먼저 법적 소유자의 권한을 얻지 않고 이 글꼴을 수정, 포함 또는 교환해서는 안 됩니다 . 제한된 라이선스 포함이 적용되려면 선택한 유일한 포함 수준이어야 합니다.
 

FM_READONLY_EMBED 비트가 설정된 글꼴은 문서 내에 포함할 수 있지만 원격 시스템에 일시적으로 만 설치해야 함을 나타냅니다. FM_READONLY_EMBED 글꼴이 포함된 모든 문서는 "읽기 전용"으로 열어야 합니다. 즉, 애플리케이션은 사용자가 문서를 보고/또는 인쇄할 수 있지만 편집할 수는 없습니다.

FM_EDITABLE_EMBED 비트가 설정된 글꼴은 문서에 포함할 수 있지만 원격 시스템에 일시적으로 만 설치해야 함을 나타냅니다. FM_READONLY_EMBED 글꼴과 달리 편집 가능한 글꼴이 포함된 문서는 "읽기/쓰기;" 편집이 허용되며 변경 내용을 저장할 수 있습니다.

fsType 비트가 설정되지 않은 글꼴은 애플리케이션에서 원격 시스템에 포함 및 영구적으로 설치할 수 있음을 나타냅니다. 원격 시스템의 사용자는 글꼴의 원래 구매자와 동일한 권리, 의무 및 라이선스를 획득하며, 원래 구매자와 동일한 최종 사용자 사용권 계약, 저작권, 디자인 특허 및/또는 상표가 적용됩니다.

글꼴 포함 DLL을 사용하거나 다른 수단을 통해 글꼴 포함 지원을 구현하는 애플리케이션은 포함을 허용하도록 허가되지 않은 글꼴을 포함해서는 안 됩니다. 또한 임시 사용을 위해 포함된 글꼴을 로드하는 애플리케이션은 포함된 글꼴이 포함된 문서를 닫을 때 글꼴을 삭제 해야 합니다 .

여러 포함 비트가 설정된 경우 부여된 최소 제한 라이선스가 우선합니다. 예를 들어 비트 1과 3이 설정된 경우 비트 3이 비트 1보다 우선하며 편집 가능한 권한으로 글꼴을 포함할 수 있습니다. 호환성을 위해 편집 가능한 포함 권한을 부여하는 대부분의 공급업체는 미리 보기 & 인쇄 비트(0x000C)도 설정합니다. 이렇게 하면 미리 보기 & 인쇄 포함만 지원하는 애플리케이션에서 글꼴 포함이 허용되는지 검색할 수 있습니다.

fwdUnitsPerEm

글꼴의 em 높이를 지정합니다.

fwdLowestPPEm

글꼴의 읽을 수 있는 가장 작은 크기를 픽셀 단위로 지정합니다. 비트맵 글꼴에는 이 값이 무시됩니다.

fwdWinAscender

글꼴의 Windows 오름차순 값을 지정합니다.

fwdWinDescender

글꼴의 Windows 내림차순 값을 지정합니다.

fwdMacAscender

글꼴의 Macintosh 오름차순 값을 지정합니다.

fwdMacDescender

글꼴에 대한 Macintosh 내림차순 값을 지정합니다. 이 숫자는 일반적으로 0보다 작습니다. Macintosh 문자 집합에서 가장 낮은 하위 항목의 기준선에서 부호 있는 변위를 측정합니다.

fwdMacLineGap

글꼴의 Macintosh 선 간격을 지정합니다. 제안된 Macintosh 인터라인 간격은 fwdMacLineGap + fwdMacAscender - fwdMacDescender와 같습니다.

fwdTypoAscender

글꼴의 입력 오름차순 값을 지정합니다.

fwdTypoDescender

글꼴의 입력 하위 값을 지정합니다. 이 값은 기준선에서 가장 낮은 하위 항목의 서명된 변위를 지정합니다.

fwdTypoLineGap

글꼴의 입력줄 간격을 지정합니다.

fwdAveCharWidth

라틴어 알파벳과 공백 문자의 26개 소문자 'a'~'z'의 모든 너비에 대한 산술 평균을 지정합니다. 26개의 소문자가 없는 경우 이 멤버는 글꼴에 있는 모든 문자 모양에 대한 가중 평균과 동일하게 설정되어야 합니다.

fwdMaxCharInc

글꼴에 있는 모든 문자 모양의 최대 문자 증분을 지정합니다.

fwdCapHeight

대문자 'H'의 위쪽을 글꼴 단위(FUnits)로 설명하는 광학 선의 높이를 지정합니다. 이는 대문자 'H.'의 측정된 높이와 같지 않을 수 있습니다. 이 정보가 없으면 fwdCapHeight 를 정의되지 않음을 나타내는 0으로 설정해야 합니다.

fwdXHeight

글꼴 단위로 소문자 'x'의 높이를 설명하는 광학 선의 높이를 지정합니다. 이는 소문자 'x'의 측정된 높이와 같지 않을 수 있습니다. 값이 0이면 이 멤버가 정의되지 않음을 나타냅니다.

fwdSubscriptXSize

아래 첨자 글꼴의 제안된 문자 너비(기준 방향에 따른 크기)를 지정합니다.

fwdSubscriptYSize

아래 첨자 글꼴의 제안된 문자 높이(오름차순 방향의 크기)를 지정합니다.

fwdSubscriptXOffset

아래 첨자 문자의 기준선 방향으로 제안된 오프셋을 지정합니다. 오프셋은 기본 문자의 문자 원점과 관련이 있습니다.

fwdSubscriptYOffset

아래 첨자 문자의 기준선 방향으로 제안된 오프셋을 지정합니다. 오프셋은 기본 문자의 문자 원점에서 가져옵니다.

fwdSuperscriptXSize

위 첨자 글꼴의 제안된 문자 너비(기준 방향에 따른 크기)를 지정합니다.

fwdSuperscriptYSize

위 첨자 글꼴의 제안된 문자 높이(오름차순 방향의 크기)를 지정합니다.

fwdSuperscriptXOffset

위 첨자 문자의 기준선 방향으로 제안된 오프셋을 지정합니다. 오프셋은 기본 문자의 문자 원점에서 가져옵니다.

fwdSuperscriptYOffset

위 첨자 문자의 기준선 방향으로 제안된 오프셋을 지정합니다. 오프셋은 기본 문자의 문자 원점에서 가져옵니다.

fwdUnderscoreSize

밑줄의 제안된 너비를 글꼴 단위로 지정합니다.

fwdUnderscorePosition

기본 줄에서 밑줄 가운데까지 제안된 변위(글꼴 단위)를 지정합니다.

fwdStrikeoutSize

글꼴 좌표로 취소선의 제안된 너비를 지정합니다.

fwdStrikeoutPosition

기준선에서 취소선 표시줄 가운데에 제안된 변위를 지정합니다.

chFirstChar

jWinCharSet에 지정된 코드 페이지에서 지원되는 가장 낮은 문자를 지정합니다. 이 필드는 Windows 3.1 호환성을 위해 제공됩니다.

chLastChar

jWinCharSet에 지정된 코드 페이지에서 지원되는 가장 높은 문자를 지정합니다. 이 필드는 Windows 3.1 호환성을 위해 제공됩니다.

chDefaultChar

jWinCharSet에 지정된 코드 페이지에서 기본 문자를 지정합니다. 이 필드는 Windows 3.1 호환성을 위해 제공됩니다.

chBreakChar

jWinCharSet에 지정된 코드 페이지의 나누기 문자를 지정합니다. 이 필드는 Windows 3.1 호환성을 위해 제공됩니다.

wcFirstChar

가장 작은 유니코드 문자 코드를 사용하여 지원되는 문자를 지정합니다.

wcLastChar

가장 큰 유니코드 문자 코드를 사용하여 지원되는 문자를 지정합니다.

wcDefaultChar

애플리케이션이 글꼴에서 지원되지 않는 문자를 요청할 때 대체할 문자를 지정합니다.

wcBreakChar

공백 문자의 코드 포인트 또는 해당 값을 지정합니다.

ptlBaseline

이 글꼴의 의도된 쓰기 방향을 포함하는 POINTL 구조를 지정합니다. 예를 들어 일반적인 라틴어 글꼴은 값(1,0)을 지정합니다.

ptlAspect

비트맵 글꼴이 디자인된 픽셀 센터의 가로 세로 비율을 포함하는 POINTL 구조를 지정합니다. 이 값은 비트맵 글꼴에서만 사용됩니다.

ptlCaret

글꼴의 오름차순 방향 방향을 포함하는 POINTL 구조를 지정합니다. 예를 들어 기울임꼴이 없는 라틴 글꼴의 값은 (0,1)이고 기울임꼴이 있는 라틴어 글꼴은 값(2,5)을 지정할 수 있습니다.

rclFontBox

디자인 공간의 글꼴에 있는 모든 문자 모양의 경계 상자를 설명하는 RECTL 구조를 지정합니다.

achVendId[4]

글꼴 공급업체의 4자 식별자를 지정합니다. 식별자는 Microsoft TrueType 사양에 설명되어 있습니다.

cKerningPairs

이 글꼴과 연결된 커닝 쌍의 수를 지정합니다.

ulPanoseCulture

panose 번호를 해석하는 방법을 지정합니다. 이 숫자는 라틴어 기반 글꼴에 대해 FM_PANOSE_CULTURE_LATIN 설정해야 합니다. PANOSE 구조에 대한 자세한 내용은 Microsoft Window SDK 설명서를 참조하세요.

panose

지정된 서체의 시각적 특성을 설명하는 데 사용되는 10바이트 배열입니다. 그런 다음 이러한 특성을 사용하여 글꼴을 이름이 다른 유사한 다른 글꼴과 연결합니다. PANOSE 구조체에 대한 자세한 내용은 Window SDK 설명서를 참조하세요.

Align

이 멤버는 _WIN64 상수가 정의된 경우에만 정의됩니다. 유일한 목적은 이 구조가 Itanium 아키텍처 아래에 올바르게 정렬되도록 하는 것입니다.

설명

서체에 대한 추가 정보는 선택적으로 IFIEXTRA 구조체에 지정할 수 있습니다.

드라이버의 DrvQueryFont 루틴이 채워지고 IFIMETRICS 구조를 GDI에 반환합니다.

IFIMETRICS 구조체는 GDI가 이해하는 서체에 대한 모든 정보를 정의합니다. 대부분의 멤버는 디자인 공간에서 16비트 수량으로 서명된 FWORD 값입니다. 글꼴이 래스터 글꼴이면 디자인 공간과 디바이스 공간이 동일하고 글꼴 단위가 픽셀 사이의 거리와 같습니다.

글꼴/개념적 공간의 좌표계는 y 좌표가 위쪽 방향으로 증가하고 x 좌표가 오른쪽으로 증가하도록 합니다.

IFIMETRICS 구조체의 Align 멤버는 x64 컴퓨터의 경우 x32 컴퓨터보다 크며, 이 구조에 따라 서식이 지정된 이진 글꼴 형식 파일에 대한 파급효과가 있습니다. Windows Server 2003 SP1부터 Prntfont.h: PRINTIFI32 고정 크기 구조가 추가되었습니다. PRINTIFI32 구조체는 ALIGN 멤버를 포함하지 않는다는 점을 제외하고 IFIMETRICS 구조체와 동일합니다.

요구 사항

요구 사항
헤더 winddi.h(Winddi.h 포함)

추가 정보

DrvQueryFont

IFIEXTRA

PATHOBJ