텍스트 맞춤 설정

GetTextAlignSetTextAlign 함수를 사용하여 디바이스 컨텍스트에 대한 텍스트 맞춤을 쿼리하고 설정할 수 있습니다. 텍스트 맞춤 설정은 지정된 위치를 기준으로 텍스트를 배치하는 방법을 결정합니다. 텍스트를 위치의 오른쪽이나 왼쪽에 맞추거나 가운데에 맞출 수 있습니다. 점 위 또는 아래에 정렬할 수도 있습니다.

다음 예제에서는 설정되는 가로 맞춤 플래그를 결정하는 메서드를 보여줍니다.

switch ((TA_LEFT | TA_RIGHT | TA_CENTER) & GetTextAlign(hdc)) 
{ 
    case TA_LEFT: 
       . 
       . 
       . 
    case TA_RIGHT: 
       . 
       . 
       . 
    case TA_CENTER: 
       . 
       . 
       . 
} 

SetTextAlign 함수를 사용하여 텍스트 출력 함수가 호출되면 현재 위치를 업데이트할 수도 있습니다. instance 경우 다음 예제에서는 SetTextAlign 함수를 사용하여 TextOut 함수가 호출되면 현재 위치를 업데이트합니다. 이 예제에서 cArial 매개 변수는 Arial 글꼴 수를 지정하는 정수입니다.

UINT uAlignPrev; 
char szCount[8];
HRESULT hr;
size_t * pcch; 
 
uAlignPrev = SetTextAlign(hdc, TA_UPDATECP); 
MoveToEx(hdc, 10, 50, (LPPOINT) NULL); 
TextOut(hdc, 0, 0, "Number of Arial fonts: ", 23); 
itoa(cArial, szCount, 10); 

hr = StringCchLength(szCount, 9, pcch);
if (FAILED(hr))
{
// TODO: write error handler 
}
 
TextOut(hdc, 0, 0, (LPSTR) szCount, *pcch); 
SetTextAlign(hdc, uAlignPrev); 

참고

선택한 텍스트가 올바르게 렌더링되지 않으므로 ScriptStringOut을 사용하는 경우 TA_UPDATECP SetTextAlign을 사용하면 안 됩니다. 이 플래그를 사용해야 하는 경우 문제를 방지하기 위해 필요에 따라 설정을 해제하고 다시 설정할 수 있습니다.