문자열 너비 및 높이
개별 문자에 대한 문자 너비 데이터를 검색하는 것 외에도 애플리케이션은 전체 문자열의 너비와 높이를 계산해야 합니다. 두 함수는 문자열 너비 및 높이 측정값인 GetTextExtentPoint32및 GetTabbedTextExtent검색합니다. 문자열에 탭 문자가 없으면 애플리케이션에서 GetTextExtentPoint32 함수를 사용하여 지정된 문자열의 너비와 높이를 검색할 수 있습니다. 문자열에 탭 문자가 포함된 경우 애플리케이션은 GetTabbedTextExtent 함수를 호출해야 합니다.
애플리케이션은 단어 줄 바꿈 작업에 GetTextExtentExPoint 함수를 사용할 수 있습니다. 이 함수는 지정된 공간에 맞는 지정된 문자열의 문자 수를 반환합니다.
글꼴 오름차순 및 내림차순
일부 애플리케이션은 글꼴의 최대 오름차순과 내림차순을 사용하여 크기가 다른 텍스트 줄 사이의 줄 간격을 결정합니다. 애플리케이션은 GetTextMetrics 함수를 호출한 다음 tmAscent및 TEXTMETRICtmDescent 멤버를 확인하여 이러한 값을 검색할 수 있습니다.
최대 상승 및 하강은 오타학적 상승 및 하강과 다릅니다. TrueType 및 OpenType 글꼴에서 타이포그라피 상승과 하강은 일반적으로 f 글리프의 위쪽과 g 글리프의 아래쪽에 해당합니다. 애플리케이션은 GetOutlineTextMetrics 함수를 호출하고 TrueType 또는 OpenType 글꼴의 OUTLINETEXTMETRIC 구조의 otmMacAscent 및 otmMacDescent 멤버의 값을 확인하여, 글꼴의 상승 범위와 하강 범위를 검색할 수 있습니다.
다음 그림에서는 NEWTEXTMETRIC 반환된 세로 텍스트 메트릭 값과 OUTLINETEXTMETRIC 구조체 간의 차이를 보여 있습니다. otm으로 시작하는 이름은 OUTLINETEXTMETRIC 구조체의 멤버입니다.
텍스트 메트릭 값이 개요 텍스트 메트릭 값과 대조되는 방식을 보여 주는
글꼴 차원
애플리케이션은 GetOutlineTextMetrics 함수를 호출하여 TrueType 또는 OpenType 글꼴의 물리적 차원을 검색할 수 있습니다. 애플리케이션은 GetTextMetrics 함수를 호출하여 다른 글꼴의 실제 차원을 검색할 수 있습니다. 출력 디바이스의 차원을 확인하기 위해 애플리케이션은 GetDeviceCaps 함수를 호출할 수 있습니다. GetDeviceCaps 물리적 차원과 논리적 차원을 모두 반환합니다.
논리적 인치는 시스템에서 화면에 읽을 수 있는 글꼴을 표시하는 데 사용하는 측정값이며 실제 인치보다 약 30~40% 큽니다. 논리적 인치를 사용하면 화면과 프린터의 출력 간의 정확한 일치가 배제됩니다. 개발자는 특히 그래픽이 텍스트에 통합된 경우 화면의 텍스트가 단순히 페이지에 표시될 텍스트의 크기 조정된 버전이 아니라는 점에 유의해야 합니다.