>> Delete No. 1743 article
No. TTF글꼴을 X에서 활용하기의 모든것

등록 2001-10-12 14:20:00     조회 5
이름 오승영    

		음... 제가 올린 팁중에서 가장 제목이 거창하군요. 뿌듯합니다. :-)
우선 여러분들이 저와 같다면 리눅스와 같이 윈도우즈도 쓰실겁니다.
저는 전에 만원짜리 MS워드2000을 산적이 있는데 포함된 글꼴 많더군요.
그중 맘에 드는 글꼴도 있어서 리눅스에서 써보고 싶었습니다.
요즘은 트루타입글꼴을 여러 개발자들덕분에 X에서 쓸수있는데 제 경험으로는 적용범위가
 완전하지 못하고 X에서 기본으로 쓰는 비트맵글꼴만큼 안정적이지 못한듯 합니다. 여기저
기 인터넷을 뒤진 결과는 이렇습니다. 원하는 디자이너글꼴로 X를 뒤범벅을 시키려면 '백
묵'스타일로 가야합니다, 트루타입글꼴과 그에 대응하는 X용 비트맵글꼴. 추가로, 백묵은 
기본스타일이기때문에 한글 비트맵글꼴만 있으면 영문은 대충 기존의 helvetica, courier등의 
글꼴등이 대응되지만 디자이너글꼴은 독특하니까 비트맵글꼴이 한글, 영문, 그리고 물론 
크기별로 있어야합니다.  여기서는 '가는안상수체'를 예로 들어보겠습니다.  1. 트루타입글
꼴을 X에 포함시키기, 왜냐하면 c:windowsfonts 디렉토리에서 구하기 쉬우니까. 어떤 분들은 어
디서 윈도우즈용 글꼴용 fonts.dir 파일을 구해다가 편집하고 짜마추고 하시는데 그럴필요없
습니다. 윈도우즈 글꼴디렉토리에서 Hmkla.ttf (트루타입 가는안상수체)를 가져와서 /usr/share/
TrueType 이라는 디렉토리에 집어넣었다면, 그디렉토리에서;  ttmkfdir -o fonts.scale mkfontdir mkfontd
ir -e /usr/X11R6/lib/X11/fonts/encodings -e /usr/X11R6/lib/X11/fonts/encodings/large chkfontpath --add /usr/share/fonts/
TrueType  하면 됩니다.
 2. 트루타입글꼴을 X용 비트맵글꼴로 바꾸기.
도구가 두개 필요합니다. ttf2bdf 와 bdftopcf 인데 bcftopcf 는 X에 포함되어있고 ttf2bdf 는 인터넷
에서 구해야합니다. 문제는 그냥 ttf2bdf를 쓰면 UTF-8인가 하는걸로 인코딩되면서 변환되기 
때문에 영문과 한글로 재 맵핑하면서 변환해야하는데, 인터넷에서 구하는 ttf2bdf도구는 영
문 맵밖에 없어서 제가 따로 한글 맵도 구해서 하나로 묶었습니다.  http://myhome.shinbiro.com/~so
1713/ttf2bdf-2.8-linux.tgz  이제 받은거 /opt 디렉토리에 압축풀었다고 하고 그디렉토리에서... 우
선 대략적인 도구 옵션 설명부터;  ./ttf2bdf -h 사용예: ttf2bdf [아래 옵션] 글꼴.ttf
-h              이 메세지.
-v              변환시 경고 메세지 출력.
-m 맵파일        문자 재 인코딩 파일.
-f 이름          글꼴회사 이름 (기본: freetype).
-t 이름          글꼴이름 (기본: 글꼴에서).
-w 이름          가는, 중간, 굵은 글꼴 조정 (기본: Medium).
-s 이름          기본 또는 이텔릭체 조정 (기본: R).
-k 이름          폭 조정 (기본: Normal).
-p 숫자          포인트 크기 조정 (기본: 12포인트).
-r 숫자          가로 세로 해상도조정 (기본: 100dpi).
-o 변환된 파일    만들어질 파일이름 조정 (기본: stdout).
 여기서 주의해야 할 점은 -w 와 -s 옵션은 맘대로 바꾼다고 바꾼대로 되는것이 아니라 있는
 글꼴대로 해야합니다. 그러니까 여기 예의 '가는안상수체'는 가늘고 기본기울기이므로 -s 
옵션은 쓸 필요없고 -w Light 로 써야합니다.(굵은안상수체라면 -w Bold)  /usr/share/fonts/ahn 디렉
토리에 변환될 비트맵 글꼴들을 집어넣으려합니다. X용 영문 비트맵글꼴 크기, 예를 들어 8
, 10, 12포인트로 변환하기.  ./ttf2bdf -m maps/iso8859.1 -t Ahn -w Light -p 8 -r 100 -o Hmkla08.bdf /usr/share/fo
nts/TrueType/Hmkla.ttf  ./ttf2bdf -m maps/iso8859.1 -t Ahn -w Light -p 10 -r 100
-o Hmkla10.bdf /usr/share/fonts/TrueType/Hmkla.ttf
 ./ttf2bdf -m maps/iso8859.1 -t Ahn -w Light -p 12 -r 100
-o Hmkla12.bdf /usr/share/fonts/TrueType/Hmkla.ttf
 여기서 -r 옵션을 100 해상도로 잡은 이유는 보통의 글꼴들, 굴림체나 바탕체, 혹은 가을체 
등등... 과는 달리 안상수체의 생긴 형태상 100dpi의 안상수체가 75dpi의 보통글꼴들하고 크기
가 대충 맞기 때문입니다.( 음... 그러니까 샘체(?)같은 글꼴은 -r 100 그리고 둥근고딕같은 
글꼴은 -r 75 ) ttf에서 bdf로 변환했으니 bdf에서 pcf로 변환;  bdftopcf -o Hmkla08.pcf Hmkla08.bdf bdftopc
f -o Hmkla10.pcf Hmkla10.bdf bdftopcf -o Hmkla12.pcf Hmkla12.bdf
 이제 압축하고 /usr/share/fonts/ahn 디렉토리로 옮깁니다.
 gzip Hmkla08.pcf
gzip Hmkla10.pcf
gzip Hmkla12.pcf
 mv *.pcf.gz /usr/share/fonts/ahn
 X용 한글 비트맵글꼴도 비슷하게;
 ./ttf2bdf -m maps/ksx1001 -t Ahn -w Light -p 8 -r 100
-o uhcHmkla08.bdf /usr/share/fonts/TrueType/Hmkla.ttf
 ./ttf2bdf -m maps/ksx1001 -t Ahn -w Light -p 10 -r 100
-o uhcHmkla10.bdf /usr/share/fonts/TrueType/Hmkla.ttf
 ./ttf2bdf -m maps/ksx1001 -t Ahn -w Light -p 12 -r 100
-o uhcHmkla12.bdf /usr/share/fonts/TrueType/Hmkla.ttf
 bdftopcf -o uhcHmkla08.pcf uhcHmkla08.bdf
bdftopcf -o uhcHmkla10.pcf uhcHmkla10.bdf
bdftopcf -o uhcHmkla12.pcf uhcHmkla12.bdf
 gzip uhcHmkla08.pcf
gzip uhcHmkla10.pcf
gzip uhcHmkla12.pcf
 mv *.pcf.gz /usr/share/fonts/ahn
 여기서 변환될 한글 비트맵파일 앞에 uhc를 붙이는 제 나를대로의 이유는 우선 영문글꼴파
일과 구분되게하고, 실제로 여기서 사용되는 한글글꼴맵이 ksx1001이 아니라 UHC(Microsoft Unifie
d Hangul Code:마이크로소프트통합 한글 코드)이기 때문입니다.  이제 /usr/share/fonts/ahn 디렉토
리로 가서;  mkfontdir  하고 fonts.alias 이라는 파일을 만듭니다. 한글글꼴에 대해서만 ksx1001.199
7-0 을 ksc5601.1987-0 로 연결시켜주면 됩니다. 여기 예에서는 내용은 이렇게;  -freetype-ahn-light-r
-normal--17-120-100-100-p-94-ksc5601.1987-0 -freetype-ahn-light-r-normal--17-120-100-100-p-94-ksx1001.1997-0
-freetype-ahn-light-r-normal--14-100-100-100-p-80-ksc5601.1987-0
-freetype-ahn-light-r-normal--14-100-100-100-p-80-ksx1001.1997-0
-freetype-ahn-light-r-normal--11-80-100-100-p-67-ksc5601.1987-0
-freetype-ahn-light-r-normal--11-80-100-100-p-67-ksx1001.1997-0
 이제 글꼴경로추가하고;
 chkfontpath --add /usr/share/fonts/ahn
 xfs를 다시 시작하면 끝.
 그리고 그놈환경에서 이글꼴로 융단폭격 맞은거같이하려면 기본적으로 홈디렉토리에 .gtk
rc라는 파일이 있기는 하지만 추가로 .gtkrc.mine이라는 파일을 만들수 있습니다. 내용을 이렇
게;  style "gtk-default-ko" {        fontset = "-freetype-ahn-light-r-normal--*-120-*-*-*-*-*-*,
              -*-*-medium-r-normal--*-120-*-*-*-*-ksc5601.1987-0,*"
}
class "GtkWidget" style "gtk-default-ko"
 노틸러스와 XMMS글꼴은 알아서 조정하시고...
ttf2bdf도구의 변환엔진이 그리 뛰어난거같지는 않습니다, 다양한 글꼴에 테스트해보세요.
마지막으로,
 http://screen.sarang.net/post/view.php3?i=view&id=475  --
ICQ#: 103231199
[관리자] 패스워드를 입력 하십시오. 답장이 존재하면 함께 삭제됩니다.[ 목록 | 이전 ]
패스워드:    

Copyleft 1999-2026 by JSBoard Open Project
Theme Designed by IDOO All right reserved