안녕하세요.
저는 손의성이라고 합니다.
Canvas에 '문장'을 그리려고 합니다. (Grid의 cell내)
문장을 그리는데 있어서는 별로 어려움이 없이 DrawRect를 사용하는데
문제는 [Grid의 cell높이를 직접 계산] 해 줘야 하는 것입니다.
( 해본 방법으로 DrawRect내의 옵션인 DT_calcrect, DT_wordbreak
를 사용하는 것인데 너무 느려서 사용하지 못합니다. )
그래서 제가 써본 방법중 그냥 단순히
( 셀의 폭 Div 문장의 길이 + 1 )
로 하면 비슷하게 WordWrap이 되긴 하는데
DrawRect와의 그리는 방식이 약간 다르다 보니 끝부분의 글자가
짤리는 경우가 있습니다.
예를 들어,
< 제가 계산하는 방식 >
+ +
what are you doi -> 길이에 따라 짜르므로 이렇게 된다.
ng now
+ +
< Draw rect 가 그리는 방식 >
+ +
what are you -> 'doing'을 미리 밑으로 보낸다
doing now
+ +
이처럼 되는 것이죠..
그리고 한글도 사용 가능해야 합니다.
그래서 제가 드리는 질문의 핵심은,
" 한자, 한자 검색해서 원하는 길이에서 짜를 수 있는 효율적인 루틴 "
" 한글인지 아닌지 구분해서 짜를 수 있는 방법 "
답변이나 조언을 부탁드립니다.
( DrawRect함수의 소스를 알 수 있는 방법도 있나요?
있다면 그 중에 이부분을 처리하는 부분을 좀 가르쳐 주세요 )
그럼, 부탁드립니다.