고스트스크립트에서 글꼴을 사용할 수 있게 하려면, 주어진 글꼴에 해당하는
파일이 어디에 있는지 고스트스크립트에게 알려주기만 하면 된다.
편집해야 할 파일은 /usr/share/ghostscript/version/Fontmap
이다.
형식은 매우 간단해서, 한 번 읽어보면 거의 뻔하다.
타입1 글꼴을 추가하는 것은 간단하다. 글꼴이 있는 디렉터리에서
type1inst
를 실행한다. type1inst
는 Fontmap
이라는
파일을 만들어 낸다. 이 파일을 고스트스크립트의 Fontmap
파일 뒤에
이어붙인다.
트루타입 글꼴을 추가하려면 약간 더 재주를 부려야 한다. 트루타입 글꼴의
이름을 알아내야 하기 때문이다. 한 가지 방법은 (무식한 짓이다, 슬프게도.)
ttf2pt1
를 써서 트루타입을 타입1으로 변환시킨 다음 afm
에서
글꼴 이름을 얻어내는 방법이다. (더 효과적인 방법이 있을 테지만, 이 방법도
통한다. 꼴사납긴 하지만.) 다음과 같이 한다.
ttf2pt1 -A fontname - 2 > /dev/null |grep FontName다음에는 이 목록을 고스트스크립트의
Fontmap
파일에 아래의 예와
같이 정확한 형식으로 추가한다.
some-font (/usr/share/fonts/subdirectory/somefont.pbf);이런 방식으로 하면 되지만, 수백개의 글꼴을 다룬다고 해보자. 이런 작업은 짤막한 펄스크립트가 필요한 일이다.
#!/usr/bin/perl # ttfontmap -- generate fontmap file for TrueType fonts my $directory=shift || print STDERR "Usage: ttfontmap {directory}\n"; $directory=~s/\/$//; for my $fontname ( glob ( "$directory/*.ttf" ) ) { open ( R, "sh -c \"ttf2pt1 -A $fontname - 2>/dev/null\" |" ); while ( <R> ) { if ( $_ =~ /^FontName/ ) { s/^FontName\s*//; chomp; print "/" . $_ . " ($fontname);\n" ; } } close R; }누구나 이 스크립트 를 다운받을 수 있다.
이 스크립트를 만들려면, 위의 부분을 잘라서 ttfontmap
이라는 파일로
만들고, 이 파일을 /usr/bin
등등 자신의 PATH
에 들어있는
디렉터리에 두기만 하면 된다. 사용 방법은 다음과 같다.
ttfontmap directory > output_file
directory
는 글꼴이 들어있는 디렉터리다. 위와 같이 하면
고스트스크립트의 fontmap 파일에 이어 붙일 수 있는 output_file
파일이 생긴다. 주의: 그저 다음과 같이 해도 된다고 생각할 수도 있다.
ttfontmap directory >> /usr/share/ghostscript/version/Fontmap하지만, 이렇게 하지 않기를 권한다. ( 실수로 ``>>`` 대신 ``>''라고 하면 무슨 일이 일어날까?)
글꼴을 고스트스크립트에서 쓸 수 있도록 하고 나면, 그 글꼴의 미리보기가
가능하다. 먼저 설치된 고스트스크립트 꾸러미 안에 있는 prfont.ps
에
대해 고스트스크립트를 실행시키고, 고스트스크립트 글꼴에 다음과 같이
입력한다.
/Fontname DoFont(
FontName
은 미리보기를 하고 싶은 글꼴이 고스트스크립트에서 갖는
이름이다.)
gs
를 기동시키는 방법은 이밖에도 여러 가지가 있다. 예를 들면
gv
처럼 좀 더 멋진 포스트스크립트 뷰어를 써서 볼 수 있도록
포스트스크립트 파일을 만들기를 원한다면, 다음과 같이 한다.
gs -sDEVICE=pswrite -sOutputFile=somefile.ps prfont.ps이렇게 한 다음에는 출력된 파일을 인쇄할 수도 있다.