다음 예제는 구성 파일에 새 PCF, TrueType 또는 Type1 프린터 상주 글꼴을 추가할 때 따라야 하는 단계를 보여줍니다.
범위 0x00000021 - 0x0000007f에서 문자를 표시하기 위한 글꼴을 현재 구성된 PCF 글꼴 대신 트루타입 글꼴로 바꿉니다.
새 글꼴을 추가하기 전에 다음과 같이 현재 구성된 글꼴에 해당하는 구성 파일에서 다양한 구성 요소를 찾으십시오.
FontNameAlias iso88591R PCF /usr/openwin/lib/X11/fonts/75dpi/courR18PCF.Z FontNameAlias iso88591B PCF /usr/openwin/lib/X11/fonts/75dpi/courB18PCF.Z . . . FontGroup iso88591 PCF iso88591R iso88591B . . . MapCode2Font 0x00000020 0x0000007f iso88591 . . . CnvCode2Font iso88591R _xuiso88591 /usr/lib/lp/locale/$LANG/mp/xuiso88591.so CnvCode2Font iso88591B _xuiso88591 /usr/lib/lp/locale/$LANG/mp/xuiso88591.so
en_US.UTF-8 로켈에서 매핑을 수행하기 위한 후보로 /usr/openwin/lib/locale/ja/X11/fonts/TT/HG-MinchoL.ttf를 선택했다고 가정합니다. 이것은 .so 모듈 내의 매핑 함수에서 유니코드 문자 매핑된 트루타입 글꼴 파일이기 때문에 받는 ucs-2 코드 포인트를 직접 반환하는 함수만 가지면 됩니다.
unsigned short _ttfjis0201(unsigned short ucs2) { return(ucs2); }
이것을 ttfjis0201.c 파일에 저장하십시오. 다음과 같이 공유 객체를 만드십시오.
cc -G -Kpic -o ttfjis0201.so ttfjis0201.c
/usr/openwin/lib/locale/ja/X11/fonts/75dpi/gotmrk20.pcf.Z 와 같은 PCF 파일을 매핑하고 있다면 /usr/openwin/lib/locale/ja/X11/fonts/75dpi/ 디렉토리에서 fonts.dir 파일을 찾으십시오. 다음와 같은 XLFD에 해당하는 인코딩에 익숙해 지십시오.
-sun-gothic-medium-r-normal--22-200-75-75-c-100-jisx0201.1976-0
jisx0201은 인코딩이기 문에 ucs-2에서 jisx0201로 매핑되는 공유 객체를 준비하십시오. .so 모듈을 만드는 매핑 테이블을 얻어야 합니다(이미 준비되지 않은 경우). 유니코드 로켈의 경우 ftp.unicode.org/pub/MAPPINGS/ 하에서 많은 문자 세트와 유니코드의 매핑을 찾으십시오. xu2jis0201.c 파일을 작성하기 위해 다음 매핑(1)(1)을 따르십시오.
unsigned short _xu2jis0201(unsigned short ucs2) { if(ucs2>= 0x20 && ucs2 <= 0x7d ) return (ucs2); if(ucs2==0x203e) return (0x7e); if(ucs2>= 0xff61 && ucs2 <= 0xff9f) return (ucs2 - 0xff60 + 0xa0); return(0); }
매핑 파일을 작성할 때 모든 UCS-2를 jisx0201 케이스에 포함시키십시오.
cc -G -o xu2jis0201.so xu2jis0201.c