한글 문자셋

By | 2012년 3월 17일

현재 한글 웹사트에서 사용되는 인코딩 방식(=문자셋)은 크게 “EUC-KR”과 “UTF-8” 이 두 가다. 특히 최근 만들어진 대부분의 웹사이트는 다국어 지원을 위해 “UTF-8″을 사용하는 추세이나 아직 “EUC-KR”을 사용하기도 한다. 따라서 웹사이트 제작에 사용된 한글을 브라우저가 올바르게 해석 보여줄 수 있도록 하려면 사용된 문자셋을 브라우저에게 알려줘야 한다. 이것은 HTML <Meta> 태그를 사용하면 된다. 이 태그는 <HEAD> ~ </HEAD> 태그 사이에 위치하며 한글이 나오기 전에 사용하는 것이 좋다. 형식은 다음과 같다.

<Meta http-equiv=”Content-Type” content=”text/html; charset=utf-8“/>

위 태그에서 이탤릭체로 된 utf-8 부분을 html 코드에서 사용한 문자셋으로 지정하면 된다. HTML5에서는 아래와 같이 단순화 해서 사용할 수 있다.

<Meta charset=”utf-8” />

만약 HTML에 사용된 문자셋을 브라우저에 알리지 않으면 브라우저는 자신에게 설정된 기본 인코딩 방식을 이용하여 문자셋을 해석하기 때문에 한글이 올바르게 처리되지 않을 수 있다.

Edit+ 로 HTML, PHP 등으로 홈페이지를 작성 저장할 때 기본 인코딩 방식은 “ANSI” 다. 이 방식으로 파일을 저장했을 때는

<Meta http-equiv=”Content-Type” content=”text/html; charset=euc-kr“/>

과같이 선언해야 한글이 깨지지 않고 바르게 보인다. 반면 파일 저장 시 인코딩 옵션을 “UTF-8″로 지정했다면

<Meta http-equiv=”Content-Type” content=”text/html; charset=utf-8“/>

과 같이 선언해야 올바른 한글 화면을 볼 수 있다.

아래 네 가지 예제는 각각의 문자셋에서 <Meta> 태그를 사용하여 브라우저에게 사용된 문자셋을 알려줬을 때와 그렇지 않았을 때, MS IE와 Apple Safari 브라우저에서 출력되는 결과를 보여준다. 결론적으로 <Meta> 태그를 이용 사용된 인코딩 방식(문자셋)을 선언하지 않으면 한글이 깨질 수 있음을 알 수 있다.

예1) Meta 태그가 생략된 EUC-KR 문서

euc-kr-1.html


인코딩 방식을 ANSI(EUC-KR)로 지정 후 저장


MSIE를 이용 euc-kr-1.html를 봤을 때 한글 깨짐 없음


Apple Safari를 이용 euc-kr-1.html를 봤을 때 한글 깨짐

예2) Meta 태그가 생략된 UTF-8 문서

utf-8-1.html


인코딩 방식을 UTF-8로 지정 후 저장


MSIE를 이용 utf-8-1.html를 봤을 때 한글 깨짐


Apple Safari를 이용 utf-8-2.html를 봤을 때 한글 깨짐

예3) Meta 태그로 사용된 문자셋 정보를 제공한 EUC-KR 문서

euc-kr-2.html


인코딩 방식을 ANSI(EUC-KR)로 지정 후 저장


MSIE를 이용 euc-kr-2.html를 봤을 때 한글 깨짐 없음


Apple Safari를 이용 euc-kr-2.html를 봤을 때 한글 깨짐 없음

예4) Meta 태그로 사용된 문자셋 정보를 제공한 UTF-8 문서

utf-8-2.html


인코딩 방식을 UTF-8로 지정 후 저장


MSIE를 이용 utf-8-2.html를 봤을 때 한글 깨짐 없음


Apple Safari를 이용 utf-8-2.html를 봤을 때 한글 깨짐 없음

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

이 사이트는 스팸을 줄이는 아키스밋을 사용합니다. 댓글이 어떻게 처리되는지 알아보십시오.