FD_DEVICEMETRICS 구조체(winddi.h)
FD_DEVICEMETRICS 구조는 드라이버 제공 DrvQueryFontData 함수의 iMode 매개 변수가 QFD_MAXEXTENTS 경우 GDI에 디바이스별 글꼴 정보를 제공하는 데 사용됩니다.
구문
typedef struct _FD_DEVICEMETRICS {
FLONG flRealizedType;
POINTE pteBase;
POINTE pteSide;
LONG lD;
FIX fxMaxAscender;
FIX fxMaxDescender;
POINTL ptlUnderline1;
POINTL ptlStrikeOut;
POINTL ptlULThickness;
POINTL ptlSOThickness;
ULONG cxMax;
ULONG cyMax;
ULONG cjGlyphMax;
FD_XFORM fdxQuantized;
LONG lNonLinearExtLeading;
LONG lNonLinearIntLeading;
LONG lNonLinearMaxCharWidth;
LONG lNonLinearAvgCharWidth;
LONG lMinA;
LONG lMinC;
LONG lMinD;
LONG alReserved[1];
} FD_DEVICEMETRICS, *PFD_DEVICEMETRICS;
멤버
flRealizedType
가속기 플래그 집합입니다. 이 값은 다음 값의 조합일 수 있습니다.
FDM_TYPE_BM_SIDE_CONST
가로 및 세로 쓰기를 위한 가속기입니다. 이 플래그가 설정되면 글꼴의 높이가 모든 비트맵에 대해 일정합니다. 가로의 경우 cy 차원이 상수임을 의미합니다. 세로의 경우 cx 차원이 상수임을 의미합니다. 이 가속기는 개요에 사용되지 않습니다.
FDM_TYPE_CHAR_INC_EQUAL_BM_BASE
가로 및 세로 쓰기를 위한 가속기입니다. 가로의 경우 이 플래그가 설정되면 각 문자 모양의 사전 너비가 문자 모양 비트맵의 cx 차원과 같습니다. 세로의 경우 이 플래그가 설정되면 각 문자 모양의 사전 너비가 문자 모양 비트맵의 cy 차원과 같습니다 . 이 가속기는 개요에 사용되지 않습니다.
FDM_TYPE_CONST_BEARINGS
설정된 경우 및 c 간격은 모든 문자 모양에 대해 상수입니다.
FDM_TYPE_MAXEXT_EQUAL_BM_SIDE
이 플래그는 FDM_TYPE_BM_SIDE_CONST 설정된 경우에만 설정할 수 있습니다. 설정된 경우 글꼴 높이(가로 및 세로 쓰기에 대해 위에서 정의한 대로)는 최대 오름차순 및 최대 하위 항목의 합계와 같습니다. 이 가속기는 개요에 사용되지 않습니다.
FDM_TYPE_ZERO_BEARINGS
설정하면 모든 문자 모양에 대해 및 c 간격이 0입니다.
pteBase
글꼴의 기준선을 따라 개념적 공간 단위 벡터를 포함하는 POINTE 구조를 지정하고 디바이스 공간으로 변환한 다음 정규화합니다. 자세한 내용은 GDI 데이터 형식의 POINTE를 참조하세요.
pteSide
오름차순 방향으로 글꼴의 기준선에 수직인 개념적 공간 단위 벡터를 포함하는 POINTE 구조를 지정하고 디바이스 공간으로 변환한 다음 정규화합니다. 개념적 공간에서 기준선 및 오름차순 방향은 직교적이어야 하지만 디바이스 공간에서 pteBase 및 pteSide 는 개념 및 디바이스 공간 변환에 따라 직교일 필요가 없습니다.
lD
글꼴이 고정 피치(모노스페이스) 글꼴인 경우 사전 너비를 지정합니다. 글꼴이 가변 피치 글꼴인 경우 이 멤버를 0으로 설정해야 합니다.
fxMaxAscender
pteSide를 따라 측정된 이 글꼴 instance 대한 힌트 최대 오름차순 높이를 지정합니다. GDI 데이터 형식의 FIX 데이터 형식을 참조하세요.
fxMaxDescender
pteSide를 따라 측정된 이 글꼴 instance 대한 힌트 최대 하위 높이를 지정합니다. GDI 데이터 형식의 FIX 데이터 형식을 참조하세요.
ptlUnderline1
문자 모양의 문자 원점을 기준으로 이 글꼴 instance 힌트 밑줄 위치를 포함하는 POINTL 구조를 지정합니다.
ptlStrikeOut
문자 모양의 문자 원점을 기준으로 이 글꼴 instance 대한 힌트가 있는 취소선 위치를 포함하는 POINTL 구조를 지정합니다.
ptlULThickness
이 글꼴 instance 힌트 밑줄 두께를 포함하는 POINTL 구조를 지정합니다. 이 벡터는 밑줄을 그리는 데 사용되는 사각형의 측면을 정의합니다. 기준은 기준선에 의해 암시적으로 정의됩니다.
ptlSOThickness
이 글꼴 instance 힌트가 있는 취소선 두께를 포함하는 POINTL 구조를 지정합니다. 이 벡터는 스트라이크 아웃을 그리는 데 사용되는 사각형의 측면을 정의합니다. 기준은 기준선에 의해 암시적으로 정의됩니다.
cxMax
이 글꼴 instance 대해 힌트가 있는 최대 문자 모양 비트맵 너비를 픽셀 단위로 지정합니다. 개요에 사용되지 않습니다.
cyMax
이 글꼴 instance 대해 힌트가 있는 최대 문자 모양 비트맵 높이를 픽셀 단위로 지정합니다. 개요에 사용되지 않습니다.
cjGlyphMax
이 글꼴 instance 대해 문자 모양에 대한 힌트 최대 크기(바이트)를 지정합니다. 이 값은 글꼴의 문자 모양을 저장하는 데 필요한 GLYPHBITS 구조체의 최대 크기입니다.
fdxQuantized
FD_XFORM 구조를 지정합니다. 글꼴 드라이버는 글꼴을 실현하는 데 실제로 사용되는 글꼴 변환을 채웁니다. 이는 FONTOBJ_pxoGetXform 정의된 GDI에서 요청한 변환과 다를 수 있습니다.
lNonLinearExtLeading
28.4 디바이스 단위의 비선형 외부 선도입니다.
lNonLinearIntLeading
28.4 디바이스 단위에서 선형이 아닌 내부 선도입니다.
lNonLinearMaxCharWidth
28.4 디바이스 단위의 비선형 최대 문자 증가입니다.
lNonLinearAvgCharWidth
28.4 디바이스 단위의 비선형 평균 문자 너비입니다.
lMinA
절대 값으로 지정된 이 글꼴을 실현하기 위한 가장 큰 음수 A 공간입니다.
lMinC
절대 값으로 지정된 이 글꼴 실현에 가장 큰 음수 C 공간입니다.
lMinD
이 글꼴 실현에 가장 작은 0이 아닌 문자 너비입니다.
alReserved[1]
예약되어 있으며 글꼴 공급자가 무시해야 합니다.
요구 사항
머리글 | winddi.h(Winddi.h 포함) |