Microsoft E-Book(chm files) 의 깨진 글자 보이게 하는 방법
1. html help workshop 을 Microsoft 에서 받습니다.
이것이 html <==> chm 변환해 주는 것인데, 이것을 이용해서 우선 chm 을 html 로 디컴파일 해 줍니다.
2. htm 소스를 열어 보면, 소스 부분 글자가 깨어져 보입니다. (아래 2가지 방법 중 한가지 선택)
해결방법1. 모든 htm 파일의 헤더 안에 명시적으로 charset 을 지정하는 부분을 추가해 주면 됩니다.
<HEAD> 태그 내에 다음과 같이 추가 한다
<META HTTP_EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
해결방법2. htm 파일내에 잘못된 케릭터 -96과 -110에 해당하는 문자를 아래와 같이 변경 합니다.
-96은 공백 문자 ' '로 변경, -110 은 '`'(apostrophe) 문자로 변경
예를 들면 해당 파일을 메모리에 올리고 아래와 같이 바꾼 후 파일을 새로 저장 합니다.
if(buffer[i] == -96)
buffer[i] = ' ';
else if(buffer[i] == -110)
buffer[i] = '`';
* 해결방법1은 인터넷 에서 검색 해서 알아낸 방법인데 실제로 해결되지 않아서 2번의 방법으로 해결
3. 다시 html help workshop 로 새로운 프로젝트 만든 후, 맨 처음 디컴파일해서 생성된 hhc 파일을
추가해 주고, Compiler 옵션에서 Search등의 세부 사항을 설정한 후 chm 파일로 컴파일 합니다.
꼬릿말 : htm의 파일의 갯수가 굉장히 많으므로 하나하나 모두 바꾸기는 힘이 든다. 따라서 프로그램으로 만들거나 unix의 bash 스크립트 등을 이용하여야 하는데 프로그램으로 할경우 _findfirst() 함수와 _findnext() 함수를 이용하면 편리 하다. MSDN을 참고 ...