한글 한자 폰트를 다르게 써야할 때
페이지 정보
작성자 운영자쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 댓글 0건 조회 51회 작성일 24-10-09 12:01본문
@font-face {
font-family: NanumSquareExtraBold;
src: url(NanumSquareEB.otf);
unicode-range: U+0020-007E, U+AC00-D7A3; // 영문, 특수문자, 숫자, 한글에만 적용
}
폰트를 제작할 때 모든 글자를 담을 수 있다면 좋겠지만, 세상에는 문자가 정말 많지요.
특히 한글 폰트는 자음 모음 조합의 가짓수에 따라 현대 한글로만 봐도 11172자나 되기 때문에,
많은 한글 폰트들이 실제로 일상에서 사용되는 상용한글 2350자만 담고 있습니다.
그러다보니 종종 외래어 등을 표기하기 위해 폰트에서 지원하지 않는 글자를 사용하게 될 경우,
해당 글자가 표시되지 않아 비어있는 것처럼 보이는 경우가 있습니다.
또는 지원은 되지만 영문에 더 어울리는 폰트가 있어서 한글과 영문을 다른 폰트로 사용하길 원하는 경우나,
어떤 특수문자만 다른 폰트로 사용하고 싶을 수도 있습니다.
font-family에 여러 폰트를 두면 앞쪽에 있는 폰트에 없는 문자인 경우 fallback으로 뒤에 있는 폰트를 사용할 수 있지만,
폰트 자체에 빈 글리프(glyph)가 할당되어 있는 경우라면 fallback 폰트가 적용되지 않을 수 있습니다.
@font-face 룰의 unicode-range 속성에 해당 폰트를 적용하고 싶은 유니코드 범위를 지정할 수 있습니다.
unicode-range: U+0-10FFFF; // 기본값, 모든 글자에 폰트 적용
unicode-range: U+0020-007E; // 영문, 숫자, 특수문자에만 적용
unicode-range: U+0041-005A; // 영문 대문자에만 적용
unicode-range: U+0061-007A; // 영문 소문자에만 적용
unicode-range: U+0020-002F, U+003A-0040, U+005B-0060, U+007B-007E; // 특수문자에만 적용
unicode-range: U+0030-0039; // 숫자에만 적용
unicode-range: U+AC00-D7A3; // 한글에만 적용
unicode-range: U+3000-30FF; // 일본 문자에만 적용
unicode-range: U+3000-30FF, U+FF61-FFEF; // 일본 문자에만 적용(반각 가타가나 포함)
unicode-range: U+4E00-9FAF; // 한중일 통합 한자에만 적용
한글 범위 등 대표적으로 접하게 될 유니코드 범위 몇 가지를 소개합니다.
다른 문자도 해당하는 유니코드 범위를 입력해주면 마찬가지로 적용 가능합니다.
/* fallback 폰트(4.5MB) */
@font-face {
font-family: DroidSans;
src: url(DroidSansFallback.woff);
/* unicode-range를 설정하지 않으면 모든 범위에 적용됩니다. */
}
/* 일본 문자 폰트(1.2MB) */
@font-face {
font-family: DroidSans;
src: url(DroidSansJapanese.woff);
unicode-range: U+3000-9FFF, U+ff??;
}
/* 라틴, 그리스, 키릴 문자 및 특수문자(190KB) */
@font-face {
font-family: DroidSans;
src: url(DroidSans.woff);
unicode-range: U+000-5FF, U+1e00-1fff, U+2000-2300;
}
body { font-family: DroidSans; }
관련링크
댓글목록
등록된 댓글이 없습니다.