고스트스크립트(gs)를 사용한 프린터 필터링

----------------------------------------------------------------------------
여기서는 유닉스 시스템에서 프린터에 별도의 필터를 달지 않고도
고스트스크립트를 이용, nh2ps와 nhppf에서 이용하는 외부 포스트스크립트 폰트를
이용한 프린터 출력을 하는 방법에 대해서 이야기하겠습니다. 물론
포스트스크립트 프린터를 가지지 않은 사람도, 포스트스크립트 프린터를 가진
사람에게도 둘 다 적용되는 이야기입니다. 포스트스크립트 프린터에서 nh2ps와
nhppf에 필요한 폰트 다운로드가 가능한 것은 아마 하드디스크를 가진 대형
프린터에서나 가능한 일일 것이기 때문입니다. 이미 gs를 통한 필터링이 가능한
경우, 이 글을 읽을 필요는 없을 것입니다.

고스트스크립트 설치

먼저 gs를 설치합니다. gs의 소스는 gs의 홈페이지 에서 얻을 수 있으며, 각
유닉스용의 바이너리 등을 찾을 수 있을 것입니다. 설치는 gs 소스 안에 있는
make.txt파일을 참조하기 바랍니다.

필터 프로그램 설치

프린트 필터로 사용할 수 있는 프로그램은 apsfilter, magicfilter등 여러가지가
있습니다만, 여기서는 설치가 간단하고 BSD시스템인지 System V시스템인지에
구애받지 않는 magicfilter라는 프로그램을 사용하도록 하겠습니다.

magicfilter는 sunsite의 Linux디렉토리에서 구할 수 있습니다. 국내에서는
여기에서도 구할 수 있습니다. magicfilter-1.2.tar.gz를 받으면 됩니다.

설치는 아주 쉽습니다. 대부분의 시스템에서는

# ./configure
# make
# make install

만 하면 됩니다. 그러면 보통 /usr/local/bin/magicfilter라는 파일이
만들어집니다.

이제 여러분의 프린터에 맞는 필터를 고를 차례입니다. 소스의 filters디렉토리에
가서 여러분의 프린터 기종에 맞는 필터를 다시 설치하면 됩니다. 예를 들어
레이저젯 4의 사용자는, ljet4-filter가 그 필터 이름입니다. *.x와 *.xc는 소스
파일인 것에 주의하세요. 이제 이 필터를 바이너리를 놓는 곳에 설치합니다.

# cp filters/ljet4-filter /usr/local/bin

이제 끝입니다.

출력방법

각 기종별 필터는, 내부적으로 magicfilter를 부르고, magicfilter는 필터
프로그램을 해석하여 입력에 맞는 출력 프로그램을 부르도록(포스트스크립트와
같은 경우 고스트스크립트를) 합니다. 그러니 nh2ps나 nhppf를 사용하는
경우에는, 먼저 nh2ps나 nhppf를 설치하고, 폰트를 설치한 다음, gs의 디렉토리의
Fontmap을 바꾼 후, 다음과 같은 방법으로 부르면 됩니다.

   * nh2ps

            % nh2ps hangul.txt | ljet4-filter | lpr


   * nhppf

     Netscape의 Print창의 출력명령 적는 난에 다음과 같이 씁니다:

            nhppf | ljet4-filter | lpr


즉, 각 프로그램과 lpr사이에 ljet4-filter(이것은 여러분의 기종별 필터로
바꾸어야 합니다)로 한번 더 필터링을 하게 하면 됩니다. 이 방법은 필요한
경우(포스트스크립트 프린터를 가진 사람은 nh2ps와 nhppf의 경우를 제외하고는
고스트스크립트 필터를 필요로 하지 않을 것이므로)에만 쓸 수 있다는 점에서
좋습니다.

시간이 나면 BSD시스템과 System V시스템에서 프린트 필터를 다는 방법에
대해서도 적도록 하겠습니다.
----------------------------------------------------------------------------
                            [Jazz | Choi Jun-Ho]
----------------------------------------------------------------------------
http://jazz.snu.ac.kr/~junker/doc/gsfilter.html
Choi Jun Ho <junker@jazz.snu.ac.kr>
Last modified: Tue Jun 24 11:59:32 1997
