안녕하세요.
고도리입니다.
한글처리때문에 복잡하신 모양인데, 간단하게만 설명드리겠습니다.
0. character set
문자를 말하는데, 영어(미국), 독일어, 한국어, 일본어 문자를 말합니다.
영미에서 쓰이는 영어의 경우 character set는 주로 iso-8859-1인가를
쓰게 될겁니다.
한국어의 경우는 euckr(==완성형 == ksc5601)를 예전에는 많이 썼고요.
1. 지역화 관련(locale)
각 나라마다 문자가 다르니, 화면에 표시되는 녀석에 알맞는 글자를 처리하기
위하여, 이 시스템에서는 이런 character set을 쓰겠다고 지정하는 겁니다.
예를 들어 한글의 경우 예전에는 euckr을 많이 썼지만, 근래는 utf-8의 유니코드
체계를 사용합니다.
2. font
어떤 글자에 해당하는 코드를 가지고, bitmap을 만들어서 화면에 뿌릴려면
해당 글자에 대한 그림 정보를 가지고 있는 font가 있어야 합니다.
우리가 주로 얘기하는 TTF(truetype font)는 utf-8 체계로 글자가 들어가
있습니다.
3. charater set 변환이 왜 필요한가.
일반 windows에서 쓰는 한글은 확장 완성형입니다.
실제로는 완성형이라고만 생각하시면 되는데,
완성형 한글은 euckr, ksc5601, cp949(code page 949: windows)이라고도
부릅니다.
유니코드에서 쓰이는 것과 같은 2 byte 체계의 글자코드 체계이기는 하지만
유니코드의 코드와는 일치하지 않습니다.
일반 완성형 font를 이용한다면 charater set 변환이 필요하지 않습니다.
하지만 우리는 주로 TTF를 쓰지요?(TTF는 utf-8 체계죠)
그래서 윈도우에서 작성한 euckr을 iconv(혹은 glibc의 gconv)란 라이브러리를
이용해서 euckr을 utf-8로 변환한 후 TTF에서 해당 글자에 알맞는 글자데이터를
추출해야만 합니다.
에궁 글로 쓰니 무지 힘드네요.
기억이 가물해서 그냥 머리에 담고 있는 것을 간단하게 얘기한 것입니다.
틀린 내용이 있더라도 pass...........^^