GetTabbedTextExtentA 함수(winuser.h)
GetTabbedTextExtent 함수는 문자열의 너비와 높이를 계산합니다. 문자열에 하나 이상의 탭 문자가 포함된 경우 문자열의 너비는 지정된 탭 정지를 기반으로 합니다. GetTabbedTextExtent 함수는 현재 선택한 글꼴을 사용하여 문자열의 크기를 계산합니다.
구문
DWORD GetTabbedTextExtentA(
[in] HDC hdc,
[in] LPCSTR lpString,
[in] int chCount,
[in] int nTabPositions,
[in] const INT *lpnTabStopPositions
);
매개 변수
[in] hdc
디바이스 컨텍스트에 대한 핸들입니다.
[in] lpString
문자열에 대한 포인터입니다.
[in] chCount
텍스트 문자열의 길이입니다. ANSI 함수의 경우 BYTE 개수이며 유니코드 함수의 경우 WORD 개수입니다. ANSI 함수의 경우 SBCS 코드 페이지의 문자는 각각 1바이트를 사용하지만 DBCS 코드 페이지의 대부분의 문자는 2바이트를 사용합니다. 유니코드 함수의 경우 가장 현재 정의된 유니코드 문자(BMP(기본 다국어 평면))는 하나의 WORD이고 유니코드 서로게이트는 두 개의 WORD입니다.
[in] nTabPositions
lpnTabStopPositions 매개 변수가 가리키는 배열의 탭 중지 위치 수입니다.
[in] lpnTabStopPositions
디바이스 단위의 탭 중지 위치가 포함된 배열에 대한 포인터입니다. 탭 중지는 순서대로 정렬되어야 합니다. 가장 작은 x-값은 배열의 첫 번째 항목이어야 합니다.
반환 값
함수가 성공하면 반환 값은 논리 단위의 문자열 차원입니다. 높이가 높은 단어에 있고 너비가 낮은 단어에 있습니다.
함수가 실패하면 반환 값은 0입니다. hDC가 잘못되고 nTabPositions가 0보다 작은 경우 GetTabbedTextExtent가 실패합니다.
설명
현재 클리핑 영역은 GetTabbedTextExtent 함수에서 반환하는 너비와 높이에 영향을 주지 않습니다.
일부 디바이스는 일반 셀 배열(즉, 문자를 커닝)에 문자를 배치하지 않으므로 문자열에 있는 문자의 익스텐트 합계가 문자열의 범위와 같지 않을 수 있습니다.
nTabPositions 매개 변수가 0이고 lpnTabStopPositions 매개 변수가 NULL이면 탭이 평균 문자 너비의 8배로 확장됩니다.
nTabPositions가 1이면 탭 정지는 lpnTabStopPositions가 가리키는 배열의 첫 번째 값으로 지정된 거리로 구분됩니다.
참고
winuser.h 헤더는 GETTabbedTextExtent를 유니코드 전처리기 상수의 정의에 따라 이 함수의 ANSI 또는 유니코드 버전을 자동으로 선택하는 별칭으로 정의합니다. 인코딩 중립 별칭을 인코딩 중립이 아닌 코드와 혼합하면 컴파일 또는 런타임 오류가 발생하는 불일치가 발생할 수 있습니다. 자세한 내용은 함수 프로토타입에 대한 규칙을 참조하세요.
요구 사항
지원되는 최소 클라이언트 | Windows 2000 Professional[데스크톱 앱만] |
지원되는 최소 서버 | Windows 2000 Server[데스크톱 앱만] |
대상 플랫폼 | Windows |
헤더 | winuser.h(Windows.h 포함) |
라이브러리 | User32.lib |
DLL | User32.dll |