ID3DXFont::D rawText 메서드

서식이 지정된 텍스트를 그립니다. 이 메서드는 ANSI 및 유니코드 문자열을 지원합니다.

구문

INT DrawText(
  [in] LPD3DXSPRITE pSprite,
  [in] LPCTSTR      pString,
  [in] INT          Count,
  [in] LPRECT       pRect,
  [in] DWORD        Format,
  [in] D3DCOLOR     Color
);

매개 변수

pSprite [in]

형식: LPD3DXSPRITE

문자열을 포함하는 ID3DXSprite 개체에 대한 포인터입니다. NULL일 수 있습니다. 이 경우 Direct3D는 자체 스프라이트 개체를 사용하여 문자열을 렌더링합니다. 효율성을 높이기 위해 DrawText 를 한 행에 두 번 이상 호출할 경우 스프라이트 개체를 지정해야 합니다.

pString [in]

형식: LPCTSTR

그릴 문자열에 대한 포인터입니다. Count 매개 변수가 -1이면 문자열이 null로 종료되어야 합니다.

Count [in]

형식: INT

문자열에 있는 문자의 수를 지정합니다. Count가 -1이면 pString 매개 변수는 null로 끝나는 문자열에 대한 포인터로 간주되고 DrawText 는 문자 수를 자동으로 계산합니다.

pRect [in]

형식: LPRECT

텍스트의 서식을 지정할 논리 좌표의 사각형을 포함하는 RECT 구조체에 대한 포인터입니다. 사각형 오른쪽의 좌표 값은 왼쪽의 좌표 값보다 커야 합니다. 마찬가지로 아래쪽의 좌표 값은 위쪽의 좌표 값보다 커야 합니다.

서식 [in]

형식: DWORD

텍스트의 서식을 지정하는 메서드를 지정합니다. 다음 값의 조합일 수 있습니다.

의미
DT_BOTTOM
텍스트를 사각형 아래쪽에 맞춥니다. 이 값은 DT_SINGLELINE 함께 사용해야 합니다.
DT_CALCRECT
사각형의 너비와 높이를 결정합니다. 텍스트 줄이 여러 줄인 경우 DrawText 는 pRect 매개 변수가 가리키는 사각형의 너비를 사용하고 사각형의 밑을 확장하여 텍스트의 마지막 줄을 바인딩합니다. 텍스트 줄이 하나만 있는 경우 DrawText 는 사각형의 오른쪽을 수정하여 줄의 마지막 문자를 경계로 합니다. 두 경우 모두 DrawText 는 서식이 지정된 텍스트의 높이를 반환하지만 텍스트를 그리지는 않습니다.
DT_CENTER
직사각형에서 텍스트를 가로로 가운데로 맞춥다.
DT_EXPANDTABS
탭 문자를 확장합니다. 탭당 기본 문자 수는 8개입니다.
DT_LEFT
텍스트를 왼쪽에 맞춥니다.
DT_NOCLIP
클리핑하지 않고 그립니다. DrawText 는 DT_NOCLIP 사용하는 경우 다소 빠릅니다.
DT_RIGHT
텍스트를 오른쪽에 맞춥니다.
DT_RTLREADING
히브리어 또는 아랍어 글꼴을 선택하면 양방향 텍스트의 텍스트를 오른쪽에서 왼쪽으로 읽는 순서로 표시합니다. 모든 텍스트의 기본 읽기 순서는 왼쪽에서 오른쪽입니다.
DT_SINGLELINE
한 줄에만 텍스트를 표시합니다. 캐리지 리턴 및 줄 바꿈은 선을 끊지 않습니다.
DT_TOP
텍스트를 위쪽으로 정렬합니다.
DT_VCENTER
텍스트를 세로로 가운데에 배치합니다(한 줄만 해당).
DT_WORDBREAK
단어를 중단합니다. 단어가 pRect 매개 변수로 지정된 사각형의 가장자리를 지나 확장하면 단어 사이에 줄이 자동으로 끊어집니다. 캐리지 리턴/줄 바꿈 시퀀스도 선을 끊습니다.

 

[in]

형식: D3DCOLOR

텍스트의 색입니다. 자세한 내용은 D3DCOLOR를 참조하세요.

반환 값

형식: INT

함수가 성공하면 반환 값은 논리 단위의 텍스트 높이입니다. DT_VCENTER 또는 DT_BOTTOM 지정한 경우 반환 값은 그려진 텍스트의 pRect(위쪽에서 아래쪽)의 오프셋입니다. 함수가 실패하면 반환 값은 0입니다.

설명

이 메서드의 매개 변수는 GDI DrawText 함수의 매개 변수와 매우 유사합니다.

이 메서드는 ANSI 및 유니코드 문자열을 모두 지원합니다.

이 메서드는 BeginScene 내에서 호출되어야 합니다. EndScene 블록입니다. 유일한 예외는 애플리케이션이 DT_CALCRECT 있는 DrawText 를 호출하여 지정된 텍스트 블록의 크기를 계산하는 경우입니다.

DT_NOCLIP 형식을 사용하지 않는 한 이 메서드는 텍스트를 클립하여 지정된 사각형 외부에 나타나지 않도록 합니다. DT_SINGLELINE 형식을 지정하지 않으면 모든 서식에 여러 줄이 있는 것으로 간주됩니다.

선택한 글꼴이 사각형에 비해 너무 큰 경우 이 메서드는 더 작은 글꼴을 대체하려고 시도하지 않습니다.

이 메서드는 이스케이프와 방향이 모두 0인 글꼴만 지원합니다.

요구 사항

요구 사항
헤더
D3dx9core.h
라이브러리
D3dx9.lib

참고 항목

ID3DXFont