GNU Ghostscript 7.06 on Linux

GNU Ghostscript 7.07 on Linux


以下は GNU Ghostscript 7.05 on Linux をとりあえず書き直したものです。

安宅さんの Install GNU GhostScript 7.06 and dvipdfmx というページが役に立ちます。 LIPS のB列出力については [qa:19792] をご覧ください。

ダウンロード

CTAN ミラー,たとえば Ring Serversupport/ghostscript/gnu/ から入手できます。

次のものは Ring Server/pub/text/TeX/ptex-win32/gs/ から入手できるはずです(ftp://ftp.gyve.org/pub/gs-cjk/ からのミラーです。 念のため ここ にも置いておきます)。

インストール

以下では Vine Linux 2.6r1,gcc-3.2.2 でインストールを行いました。

cd /usr/local/src
tar xvzf ...../ghostscript-7.06.tar.bz2
cd ghostscript-7.06
tar xvzf ...../jpegsrc.v6b.tar.gz
mv jpeg-6b jpeg
./configure

Mac OS X の tar では bz2 でエラーになるので,

tar xvzf ...tar.bz2

bzip2 -dc ...tar.bz2 | tar xvf -

のように読み替えてください。

私の場合,EPSON LP-1900 用の設定を追加します。

[ご注意] エプソンコーワのドライバは少しバグっているように思えます。 私は古い Ghostscript 7.05 のページに書いた方法に戻してしまいました。 以下は念のため残しておきます。

エプソンコーワ の Linux 用ドライバのページで eplaser-3.0.6-652.tgz をダウンロードして次のようにします(カラーの場合は gdevesmv... が gdevescv... になります)。

cd /usr/local/src/ghostscript-7.06/src
tar xvzf eplaser-3.0.6-652.tgz
cat eplaser-3.0.6/gdevesmv6.mak >>contrib.mak

gdevesmv.c の #if GS_VERSION_MAJOR == 6 とある部分をすべて #if GS_VERSION_MAJOR == 6 || GS_VERSION_MAJOR == 7 に直します。

これでトップレベルの Makefile のたとえば

DEVICE_DEVS2=

となっているところを

DEVICE_DEVS2=$(DD)lp1900.dev

とします。

これでトップレベルで makemake install すると,次のものが /usr/local/bin に入ります。

bdftops dvipdf eps2eps fixmswrd.pl font2c gs gsbj gsdj gsdj500 gslj gslp gsnd lprsetup.sh pdf2dsc pdf2ps pdfopt pf2afm pfbtopfa pj-gs.sh printafm ps2ascii ps2epsi ps2pdf ps2pdf12 ps2pdf13 ps2pdf14 ps2pdfwr ps2ps pv.sh sysvlp.sh unix-lpr.sh wftopfa

また,/usr/local/share/ghostscript/7.06 の下にたくさんのものが入ります。

仕上げです。

make
make install
cd /usr/local/share/ghostscript
tar xvzf gnu-gs-fonts-std-6.0.tar.gz
tar xvzf gnu-gs-fonts-other-6.0.tar.gz
mkdir Resource
cd Resource
tar xvzf adobe-cmaps-200204.tar.gz
tar xvzf acro5-cmaps-2001.tar.gz

/usr/local/share/ghostscript/7.06/lib/gs_res.ps の248-249行

  /FontResourceDir (/Resource/Font/) readonly .forcedef	% pssys'params is r-o
  /GenericResourceDir (/Resource/) readonly .forcedef	% pssys'params is r-o

/Resource/(2箇所)を /usr/local/share/ghostscript/Resource/ に書き直します(あるいは ln -s /usr/local/share/ghostscript/Resource /Resource のようにシンボリックリンクします)。

次は和文フォントを使えるようにします。 ここではまず 東風明朝 CID 化キット を使ってみます。 オープンラボラトリの /efont/dist/Kochi-CID/current/ から Kochi-CID-番号.tar.bz2 という名前のファイルをダウンロードし,展開します。 出てきた Kochi-Mincho,Kochi-Gothic を /usr/local/share/ghostscript/Resource/CIDFont/ に入れておきます。 そして,/usr/local/share/ghostscript/7.06/lib/CIDFnmap に次のように書き込みます。

/Ryumin-Light           /Kochi-Mincho     ;
/GothicBBB-Medium       /Kochi-Gothic     ;
/HeiseiMin-W3           /Ryumin-Light     ;
/HeiseiKakuGo-W5        /GothicBBB-Medium ;

こうしておけばコマンド ps2pdf で日本語 PDF が作れます。

ちなみに,東風は「こち」と読みます(→ 古川泰之さんのMy Linux 日本語化計画)。

あるいは,和文 TrueType フォントがあれば /usr/local/share/ghostscript/fonts に入れて,/usr/local/share/ghostscript/7.06/lib/CIDFnmap にたとえば次のように書き込みます(これらはダイナフォントの平成書体で,商品です)。

/Ryumin-Light           (DFHsm3.ttc)      ;
/GothicBBB-Medium       (DFHsg5.ttc)      ;
/FutoMinA101-Bold       (DFHsm5.ttc)      ;
/FutoGoB101-Bold        (DFHsg7.ttc)      ;
/Jun101-Light           (DFHsr4.ttc)      ;

フォントによっては TrueType Collection 番号を追加します:

/Ryumin-Light           (XXXXXX.ttc) 2    ;

システム設定

/etc/printcap はたとえば次のようにしておきます。

lp:\
        :sd=/var/spool/lpd/lp:\
        :mx#0:\
        :sh:\
        :lp=/dev/lp0:\
        :if=/usr/local/lib/gsf:

スプールディレクトリができていない場合は作っておきます。

checkpc -f

フィルタ /usr/local/lib/gsf は,LP-1900 の 600dpi モードなら,次のようにします。

#!/bin/sh
/usr/local/bin/gs -q -dNOPAUSE -dSAFER -dBATCH \
  -sDEVICE=lp1900 -r600 -sPAPERSIZE=a4 -sOutputFile=- -

1200dpi モードなら,-r600-r1200 にします。 1200dpi モードにするとかなり遅くなりますし,文字部分はあまり変化がありませんが, 画像はハーフトーンの網点が細かくなるので一目瞭然の差があります。

これで lpr hoge.ps と打ち込めば hoge.ps が印刷できます。

他のオプションについてはエプソンコーワの Ghostscript Driver 説明書 を参考にしてください。

その他

B列(B5判など)の出力については TeX の掲示板の 17129 以下に話題が出ています。 GhostscriptのB列はJISではなくISOなのでサイズが微妙に違います。 たとえばJISのB4は /jisb4 と定義されています(gs_statd.ps)。 dvipsのサイズ指定については ここ 参照。


リンクはご自由にどうぞ。

松阪大学 奥村晴彦
Last modified: 2003-07-25 17:11:41