TODAY : / TOTAL :

120620_API :: DC(Device Context) - TextOut , DrawText

  • Share this:
반응형


TextOut


  hdc=GetDC(hWnd);
  SetTextAlign(hdc,TA_CENTER);                                    // TA_CENTER :: 가운데 정렬.
  TextOut(hdc,250,100,TEXT("PRINT TA_CENTER  "),17);   // 문자열 좌표는 문자열 중간을 기준으로 함.
  TextOut(hdc,250,120,TEXT("PRINT TA_CENTER  "),17); 
  ReleaseDC(hWnd, hdc);                                                // 가져왔던 DC 반환. 
                                                                                         ** 핸들은 사용하고 바로 반납을 해야 함.


DrawText
 
 
 HDC hdc;
 PAINTSTRUCT ps;
 RECT rt={100,100,400,300};                                               // { Left Pos , Top Pos, Right Pos, Bottm Pos }

 TCHAR *str=TEXT("님은 갔습니다. 아아 사랑하는 나의 님은 갔습니다. 푸른 산빛을 "
  "깨치고 단풍나무 숲을 향하여 난 작은 길을 걸어서 차마 떨치고 갔습니다."
  "황금의 꽃같이 굳고 빛나던 옛 맹세는 차디찬 티끌이 되어 한숨의 미풍에 "
  "날아갔습니다.");

 DrawText(hdc,str,-1,&rt,DT_CENTER | DT_WORDBREAK);
- 구성 -
 DrawText(hdc,                                                               // DC 핸들
                str,                                                                // 텍스트 포인터
                -1,                                                                // -1 == NULL 까지 출력
                &rt,                                                               // 텍스트를 그릴 사각형 좌표
                DT_CENTER | DT_WORDBREAK);                    // 텍스트 설정.

DrawText 컴파일을 했을 떄 "일치하지 않는 문자열을 연결하고 있습니다." 라는 오류가 뜬다면,
문자집합(유니코드 or 멀티바이트)을 변경하거나, 아래코드로 변경 한다.

* 멀티바이트 :
TCHAR *str=TEXT("님은 갔습니다. 아아 사랑하는 나의 님은 갔습니다. 푸른 산빛을 "
  "깨치고 단풍나무 숲을 향하여 난 작은 길을 걸어서 차마 떨치고 갔습니다."
  "황금의 꽃같이 굳고 빛나던 옛 맹세는 차디찬 티끌이 되어 한숨의 미풍에 "
  "날아갔습니다.");

* 유니코드 :
 TCHAR *str=TEXT("님은 갔습니다. 아아 사랑하는 나의 님은 갔습니다. 푸른 산빛을 \
깨치고 단풍나무 숲을 향하여 난 작은 길을 걸어서 차마 떨치고 갔습니다.\
황금의 꽃같이 굳고 빛나던 옛 맹세는 차디찬 티끌이 되어 한숨의 미풍에 \
날아갔습니다.");

 * \ 한문장 처럼 이어주는 역할. 중간에 TAB 입력도 출력되므로 주의.

반응형

SEARCH

태그로 찾아보기