KTUG마당은 KTUG를 방문하는 모든 이용자가 대화를 나누고 소식을 전하는 곳입니다.
- 로그인 없이 자유롭게 글을 읽고 쓸 수 있는 철학은 처음과 같이 계속됩니다.
- Team Blog의 글을 이곳 게시판의 "정보글"로 모았습니다. Team blog는 기고자가 올린 글에 질문을 받는 부담을 줄이기 위하여 댓글을 허용하지 않았습니다. 그러나 이곳 게시판으로 모으면서 댓글을 달 수 있습니다. 게시물을 작성하실 때 댓글을 원하지 않으시면 댓글을 허용하시지 않으시기를 바랍니다. 또한 불필요한 소모성 댓글을 달지 않도록 주의하여 주시기를 바랍니다.
- TeX과 관련된 질문이나 답변은 QnA 마당을 이용하십시오. TeX과 관련된 질문은 지웁니다
- MathJax를 이용한 수식조판을 사용하실 수 있습니다. 여기를 참조하세요.
- 스팸 글을 막기 위하여 짧은 시간 내에 다시 글이 등록되는 IP를 막거나, 광고 글을 막기 위하여 금지어로 .com, .net 등을 설정하고 있습니다. 다소간의 불편함이 있으시더라도 양해 바랍니다.
- 금지어에서 stackexchange, stackoverflow, ctan, overleaf, , github, google.com, gmail.com, .org, .io, sil.org, wiki.com, tistory.com등은 해제하였습니다.
- 사용하는 편집기는 CKeditor입니다. 편집기에서 [enter]를 누르면 <p> 태그가 들어가고, 문단으로 생각하고 한줄을 비웁니다. 글줄만 바꾸려면 shift-enter 를 누르시면 <BR>가 들어가므로 용도에 맞게 나누어 쓸 수 있습니다.
정보글 한글 폰트 설정하기. hangulfontset.
2014.06.09 21:38
XeTeX, LuaTeX이 도입된 이래 한글 폰트를 맘대로 쓸 수 있게 되어서 좋습니다.
그런데 의외로 \setmain... 어쩌구 하는 한글 폰트 설정 명령에 애를 먹는 분들이 계신가봐요.
사실 어렵지는 않은데 귀찮다고 할 수 있겠죠.
간단한 패키지를 하나 만들었습니다. 이름하여 hangulfontset.sty.
(1) 나눔글꼴 설정
\usepackage{hangulfontset} => 이것은 \usepackage[default]{hangulfontset}과 같습니다. 나눔명조/나눔고딕 한글이 설정됩니다.
\usepackage[defaultx]{hangulfontset} => 명조체 한글이 ExtraBold가 됩니다.
\usepackage[barun]{hangulfontset} => 고딕체가 나눔바른고딕이 됩니다. (당연히 글꼴은 설치되어 있어야 합니다.)
\usepackage[barunx]{hangulfontset} => 고딕체를 나눔바른고딕으로 하고 명조체 볼드가 ExtraBold.
여기까지는 명조체에 한자가 나오지 않습니다.
\usepackage[nanum]{hangulfontset} => ExtraBold 명조와 한자. 한자는 NanumGothic의 것을 찍습니다.
(2) 사전설정된 글꼴 집합
\usepackage[hcr]{hangulfontset} => 함초롬LVT.
(3) 한글 글꼴 설정하기
[auto] 옵션: 볼드체를 자동으로 탐색합니다. 당연히 글꼴 가족이 정의되지 않은 글꼴에서는 찾기에 실패하므로 볼드도 그냥 보통체로 찍힙니다.
[user] 옵션; 볼드를 지정하면 그 글꼴을 쓰고 볼드의 지정이 없으면 FakeBold합니다. FakeBold가 xetex에서만 되는 건 다 아실테고요. 특히 이 옵션은 bold까지 모두 사용자가 지정해줄 때 씁니다.
[mj, mjbold, gt, gtbold] 각각의 글꼴 이름을 써넣습니다. 되도록 포스트스크립트 이름을 쓰는 것을 추천합니다. 예를 들면
\usepackage
[user,mj={HCRBatangLVT},mjbold={HCRBatangLVT-Bold},gt={HCRDotumLVT},gtbold={HCRDotumLVT-Bold}]
{hangulfontset}
auto나 user를 쓸 때, mj만 지정하면 gt 폰트도 이 폰트 설정을 따라갑니다. 반면 gt만 설정하는 것은 mj에 영향을 주지 않습니다.
(4) 한자 글꼴
한자 글꼴을 별도로 지정하려면 [hanja] 옵션을 활성화하거나 [hanjabyhangul]을 주어야 합니다.
[hanja]를 선언한 후에는 hjmj, hjmjbold, hjgt, hjgtbold를 지정할 수 있으며, auto 옵션이 주어지면 hjmj로 볼드체를 자동으로 찾으려 합니다. user 옵션이 주어지면 hjmjbold가 있는 것이 좋고 없으면 FakeBold합니다.
[hanjabyhangul]은 되도록 한글 글골에서 한자를 찾으려합니다만 한자가 없는 글꼴이라면 도리없겠죠.
* \fallbackhanjafont나 \fallbackhangulfont 등 fallback 폰트관련 사항은 이 패키지에서 지원하지 않습니다.
* setmonohangulfont 계열도 지원하지 않습니다. 필요하면 직접 써넣으세요.
(5) 속성의 추가
일단 이 패키지로 글꼴을 설정하면 FakeSlant가 동작합니다. (BoldItalic은 설정하지 않았습니다. 이게 필요할까요? 의견이 있으시면 반영하고요.)
Ligatures=TeX을 기본적으로 넘겨줍니다.
이 이외에 추가적인 font feature를 지정하려면, feature 옵션을 이용합니다.
\usepackage[feature={Color=blue}]{hangulfontset}
mjfeature와 gtfeature로 따로 구분하여 지정할 수도 있습니다. WordSpace라든가, interhchar라든가... 필요한 게 있으면 이 옵션을 이용하세요.
===
hcr을 기본 한글 폰트로 하고 한자 폰트만 mj/gt로 각각 부여해본 경우입니다.
\usepackage
[hcr,hanja,hjmj={DX해서M.ttf},hjgt={MalgunGothic}]
{hangulfontset}
KoPub으로 설정해본 예입니다.
\usepackage[user, %% KoPub은 bold체를 지동으로 못 찾습니다.
mj={KoPubBatangLight},
mjbold={KoPubBatangBold},
gt={KoPubDotumMedium},
gtbold={KoPubDotumBold},
hanjabyhangul,
mjfeature={WordSpace=1.2,interhchar=-.03em},
gtfeature={WordSpace=1.1}]
{hangulfontset}
===
사용해보시고 이상동작, 기능개선 등이 필요하면 답글을 달아주세요.
댓글 10
-
DohyunKim
2014.06.10 09:50
-
nanim
2014.06.10 12:06
말씀대로 하였습니다.
-
처음처럼
2014.06.10 14:19
어렵다.. ㅡㅜ.
-
nanim
2014.06.10 22:19
사용법이 너무 어렵다는 말씀이신가요? (설명이 복잡해서 그렇지 그다지 어렵지 않은데...)
쉽게 사용할 수 있게 하려면 어찌하면 좋을지 아이디어를 부탁드립니다.
-
hwang
2014.11.18 13:53
사용하는 예문을 하나 올려주시면 감사하겠습니다...
예)
\documentclass[11pt,a4paper]{article}
\usepackage{dhucs}
\begin{document}
한글
\end{document}
-
nanim
2014.06.11 18:27
version 0.3
[nanum] 옵션의 원래 의도는 고딕을 NanumGothic으로 찍는 거였는데 오타로 NanumBarunGothic으로 찍게 되어 있던 것을 수정했습니다.
그리고 immediate expansion을 위해서 Nn을 Nx로 바꾼 곳이 두어 곳 있습니다.
-
goihndol
2014.12.20 19:58
위 첨부된 파일을 풀어서 어디에 복사해 넣어야 합니까?
-
nanim
2014.12.21 11:02
KTUG 사설저장소를 등록하고 tlmgr install hangulfontset으로 설치하십시오.
-
수
2023.07.18 21:09
사설저장소에 어떻게 등록합니까? 초보라서 죄송함돠~
-
likesam
2023.07.18 22:48
http://wiki.ktug.org/wiki/wiki.php/KtugPrivateRepository
hcr 옵션을 주면 자동으로 Script=Hangul이 붙으면 좋겠습니다.