일본어 깨지는 문제 좀...

프로그래밍 일반에 관한 포럼입니다.

Moderator: 류광

Locked
비회원

일본어 깨지는 문제 좀...

Post by 비회원 »

안녕하세요.

유니코드를 이용해 편집을 한 후, 멀티바이트캐릭터셋으로 전환해 게임에 올리는 작업을 하고 있습니다.
(로컬라이징...)

한글과 중국어는 잘 되는군요. 헌데 이상하게 일본어는 깨집니다.

그것도 한글 윈도에선 조금 깨지고, 되려 일본 윈도에선 알아볼 수도 없게 말입니다.

한자가 그럴 때도 있고, 혹은 히라가나가 깨질 경우도 있습니다.

음....제가 한 작업 방법은,

편집기에서 일어로 작업해 유니코드로 저장한 후, 그것을 게임에서 읽어 WideCharToMultiByte()를 통해 바꿉니다.

편집기에서 그러니까 유니코드에서 유니코드로 입출력할 경우는 아무 문제 없습니다.

한글이나 중국어는 문제 없는데, 유독 일어만 깨지는군요.
(젠장할, 쪽발이 놈들아. ㅠ_ㅠ!!)


게임은 이미 서비스 중이며, 기본적으로 멀티바이트캐릭터셋을 사용한지라, 바꿀 순 없습니다.
(즉, 게임에서도 유니코드를 사용하라는 조언은 의미가 없습니다. ㅠ_ㅠ)

폰트의 캐릭터 셋이나, WideCharToMultiByte() 설정 문제일까요?

아니면 해당 윈도의 코드 페이지 누락 문제일까요?

혹시 이런 경우 겪으신 분 계시나요? 지혜를 나눠주시면 감사하겠습니다.
zupet
Posts: 2764
Joined: 2003-05-13 03:34
Location: NCSOFT LE팀

Re: 일본어 깨지는 문제 좀...

Post by zupet »

비회원 wrote:폰트의 캐릭터 셋이나, WideCharToMultiByte() 설정 문제일까요?

아니면 해당 윈도의 코드 페이지 누락 문제일까요?

혹시 이런 경우 겪으신 분 계시나요? 지혜를 나눠주시면 감사하겠습니다.
WideCharToMultiByte() 호출하실때 codepage 는 무엇을 주고 계신가요? 일본어는 932 이고 이것을 CP_ACP로 주고 계시다면 위에 설명한 것과 같은 문제를 발생하리라 생각합니다. 중국어 또한 제대로 보이는 것 같지만 codepage 가 틀렸을 가능성이 있으니 변환할때는 적절한 코드페이지를 반드시 입력해 주셔야 합니다.

그리고 유니코드 텍스트를 해당 코드로 바꿀때는 WideCharToMultiByte() 를 직접 쓰는 것고 괜찮지만 개인적으로 IE를 선호합니다. 인터넷 익스플로러로 텍스트 파일을 불러온다음 Save As.. 에서 텍스트 파일의 적절한 인코딩을 선택해주면 되니까요. 개발 초기에는 자신이 변환한 것과 IE가 변환한게 어떻게 틀린지 수시로 확인해주는 것이 좋습니다.
비회원

932 ?? 잘 안됩니다.

Post by 비회원 »

CP_ACP란 WideCharToMultiByte()의 첫번째 인자를 말씀하시는 것 아닌가요?

첫째 인자로 CP_ACP 대신 932 를 넣었는데, 결과가 더더욱 엉망이었습니다.

혹시 인자인 CP_ACP가 아닌...어떤 다른 설정에서 932를 말씀 하신 것인가요?

음...

그리고 툴을 사용해 입력하는 자는 개발자가 아닌 일반인이라 IE 방식을 쓸 수가 없답니다.

ㅠ_ㅠ)
비회원

Re: 일본어 깨지는 문제 좀...

Post by 비회원 »

비회원 wrote: 그것도 한글 윈도에선 조금 깨지고, 되려 일본 윈도에선 알아볼 수도 없게 말입니다.
인코딩된 텍스트 파일은 한글(cp949)로 저정하 놓은게 아닌가 확인을 해보세요.
제대로 저장을 했으면 한글윈도에서 깨져야 정상입니다.
비회원

해결했습니다.

Post by 비회원 »

신경 써주셔서 감사합니다.

문제는 CreateFont 하는데, 캐릭터 셋을 특정해 놓은게 문제였습니다. -0-;;

DEFAULT_CHARSET 로 바꾸니 여러 나라 것이 잘 되네요.

ㅎㅎ.

좋은 하루되세요.~
Locked