nakano@apm.seikei.ac.jp
注意: この文書はかなり以前に書かれたものなので、 いまどきの Linux 環境にはあてはまらない箇所があります。 (JF Project)
最近では LaTeX2e 関連の書籍も出そろった観があり、 国内でも LaTeX の利用としては 2e の方が主流になってきました。 ASCII からは kpathsea ライブラリに機能強化が行われた pTeX-2.1.5 が公開され、 DOS や Win, Mac の世界ではこれをベースにした環境が主流になってきているようです。
この文書の初版公開当時には Linux にはバイナリ配布のパッケージが無く、 それが本文書執筆の動機にもなっていたわけですが、最近は debian-jp や PJE などのプロジェクトによって 2.1.5 のパッケージがリリースされ、 インストールも簡単になってきました。
ということで、実はこの文書の存在意義もそろそろなくなってきているのですが、 まだ筆者の web ページのログを見ると、 アクセスして下さっている方もかなりいるようですので、 主に京大の土屋さんからいただいた情報を追加し、 改版することにしました。 実は筆者はまだ 2.1.4 の環境に安住していますので、 もはや参考になる部分は少ないかもしれませんが、何かの役に立てば幸いです。
ちなみに私が Linux を利用するにあたって、 そのほとんどの時間は Win95 の TeraTerm という VT100 端末ソフトを通しての作業になっています。 実は TeX に関しても
という変則的な使い方をしております。 従って xdvi や dvi2ps-j もインストールはしましたが、 横書き文書をプレビューできることしか確認していません。 またフォントの自動生成などに関してもいろいろ問題があるかとは思いますが、 pLaTeX2e 環境の構築に関するまとまった情報はまだ少ないので、 とりあえず何かの役には立つかと思い、文書としてまとめることにしました。
インストール前の環境は以下のようなものです。
また印刷に用いたプリンタは以下の 2 台です。
この文書を書くにあたって参考にした URL です。
京都大学の土屋さんには dvipsk や makeindex, LaTeX2e 関連パッケージなどのインストールに関する 大変有益な情報を送っていただきました。 これらを追加することが 0.3 の改版における主要な動機となりました。 ただし本文中に誤りがあったとしても、それは全て筆者の責任です。
また京都大学の石井さんには、 Microsoft 社の Truetype のライセンスに関するご指摘をいただきました。
この文書中での作業にあたり、%
は一般ユーザでの、
#
はルート権限での作業をそれぞれ示しています。
ルートでの作業が結構多くなってしまいますので、
くれぐれも注意して行ってください。
この文書によって生じた障害、損失については筆者は一切の責任を取れません。
ご自分の責任の下で利用してください。
まず TeX コンパイラ本体を作ります。 ソースが大きくなってしまうので取ってくるのが大変ですが、 手元での作業は比較的簡単です。
ASCII 版 pTeX の一次配布元は ftp://ftp.ascii.co.jp/pub/TeX/ascii-ptex/ です。 ミラーサイトの情報は http://www.ascii.co.jp/pb/ptex/ から辿れるページにありますので、参考にしてください。 多量の転送を行う必要があるので、 できるだけ近いところを選ぶようにしましょう。
サイトを決めたら、そこから以下のファイルを入手します。 ftp サイトのベースディレクトリから見たときの相対パス名で与えてあります。
ptex-2.1.4.tar.gz
plib-euc.tar.gz
corresponding-sources/web-6.1.tar.gz
corresponding-sources/web2c-6.1.tar.gz
corresponding-sources/web2c.kpathsea-2.6.help
corresponding-sources/lib-6.9.tar.gz
corresponding-sources/xdvik-18f.tar.gz
xdvik-18f.tar.gz は同ディレクトリにある dvipsk や dviljk のパッケージ でも良いのですが、後でどうせ xdvi は作るのでこれが良いと思います。
ptex-2.1.4.tar.gz の README.euc を読めばすべて書いてあるのですが、一応 step-by-step の手順を示します。
# cd /usr/local/lib
# zcat (somewhere)/lib-6.9.tar.gz | tar xf -
# zcat (somewhere)/plib-euc.tar.gz | tar xf -
% zcat web-6.1.tar.gz | tar xf -
% zcat web2c-6.1.tar.gz | tar xf -
% zcat ptex-2.1.4.tar.gz | tar xf -
% zcat xdvik-18f.tar.gz | tar xf -
これによって web2c-6.1、 ptex-2.1.4、 xdvik-18f 各ディレクトリができます。
% mv web2c-6.1/web2c xdvik-18f
% mv xdvik-18f kpathsea-2.6
% rm -rf web2c-6.1
% rm -rf kpathsea-2.6/xdvik
% cd kpathsea-2.6
% patch -p -s < ../web2c.kpathsea-2.6.help
% cd ../ptex-2.1.4
% ./pTeXsetup -euc
% cd ../kpathsea-2.6
% ./configure
extern void *alloca();
kpathsea-2.6/kpathsea/Makefile
の CFLAGS
から始まる行に、-Dhypot
を追加しておけば良いと思います。
/usr/local/bin
にインストールされますので、
ここに 2.09 のバイナリが存在する場合は適宜名前を変更しておくなりして下さい。
またこの際 TEXPK や TEXTFMPATH など、以前のパッケージで指定されていた
TeX 関連の環境変数の指定は全部解除してください。そうしないとフォントや
TFM ファイルが見付からない旨のエラーになります。pTeX 2.1.4 および対応 dviware では、フォントの自動生成機能が追加されています。
このとき、新たに生成されるフォントは
/usr/local/lib/texmf/fonts/tmp/
以下のディレクトリに置かれるので、
このディレクトリのパーミッションは
777
にしておかないとユーザによる書き込みができなくなります。
LaTeX2e のマクロパッケージは原則として半年おきにアップデートされています。
lib-6.9.tar.gz
の中に入っているのは古いので、
できるだけ最新版を利用するのが望ましいでしょう。
まず ASCII かそのミラーサイトから以下のソースを取ってきます。
場所については
pTeX のソース
の節を参照してください。
base-9612.tar.gz
pl9702e.tar.gz
前者は CTAN (Comprehensive TeX Archive) の macros/latex/base
を固めたものです。
有用なマクロなどもありますので、CTAN は一度覗いておくと良いでしょう。
最新の LaTeX2e では EC フォントと呼ばれるフォント群を利用することが
推奨されています。
これも CTAN の fonts/ec/
以下のディレクトリに置かれています。
可能ならば入手しておくと良いでしょう。
などがあるようです。
私は tar+gz でディレクトリを一括転送してくれる会津大のサイトを
良く利用させてもらっています。ここでは例えば
ec
ディレクトリの親ディレクトリで
get ec.tar.gz
などとすると、
ec
ディレクトリ下の中身を自動的にアーカイブしたファイル
ec.tar.gz
を転送してくれます。
以下の記述は多くが platex2e の README.euc によります。
また以下の説明では簡略化のため /usr/local/lib/texmf
を
$TEXMF
と
記します。
$TEXMF/fonts/public/ec
ディレクトリ下に置きます。
$TEXMF/tex/latex2e/base
ディレクトリに LaTeX2e
のファイルを展開します。
# cd $TEXMF/tex
# mv latex2e latex2e.orig
# mkdir latex2e; cd latex2e
# zcat (somewhere)/base-9612.tar.gz | tar xf -
unpack.ins
、 ec.ins
を initex
で処理します。
# cd base
# initex unpack.ins
# initex ec.ins
# initex latex.ltx
# mv -f latex.fmt $TEXMF/ini
# cd /usr/local/bin
# ln -s virtex latex
# cd /tmp
# rehash
# latex ltxcheck
正しくインストールされていれば、すべてのテストが "OK"
になります。エラーが表示された場合は、その指示に従って環境を構築してください。
同じく pLaTeX2e の README.euc 中の記述によります。
# cd /tmp
# zcat (somewhere)/pl9702e.tar.gz | tar xf -
# mkdir $TEXMF/tex/platex2e
# mkdir $TEXMF/tex/platex2e/base
# mv 9702/ $TEXMF/tex/platex2e/base/
# rm -rf 9702
# cd $TEXMF/tex/platex2e/base
# iniptex plcore.ins
# iniptex platex.ltx
# mv -f platex.fmt $TEXMF/ini
# cd /usr/local/bin
# ln -s virptex platex
今まで書いた文書もコンパイルできるように、 LaTeX 2.09 のマクロも利用できるようにしておきます。
/usr/local/lib/tex/macros
にあると思いますので、これを
/usr/local/lib/texmf/tex/jlatex209/
などのディレクトリを掘ってコピーしておきます。
# cd /usr/local/lib/texmf/tex/jlatex209
# iniptex jlplain.tex \\dump
jlplain.fmt
ができますので、
これを今までと同じようにインストールします。
# cp jlplain.fmt /usr/local/lib/texmf/ini
# cd /usr/local/lib/texmf/ini
# ln -s jlplain.fmt jlatex.fmt
# cd /usr/local/bin
# ln -s virptex jlatex
/usr/local/lib/texmf/web2c/texmf.cnf
に追加します。具体的には
jlatex_inputs = .:$TEXMF/tex/jlatex209//:$TEXMF/tex// TEXINPUTS.jlatex = $jlatex_inputs
TEXINPUT
行の前に入れておけばよいでしょう。本節は土屋@京大さんよりいただいた情報に基づいています。
LaTeX2e では、ps file を文書に取り込んだりするマクロは別のパッケージに して配布されています。まず CTAN サイト から
macros/latex/packages/
以下のファイルを get して下さい(方法は、ec font の取得の時と同じです)。
得られた packages.tar.gz を適当なディレクトリに展開します。
%cd /usr/local/src
%tar xvzf $FTP/packages.tar.gz
まず tools パッケージの場合。 tools パッケージには enumerate.sty などが含まれます。
%cd /usr/local/src/packages/tools
%latex tools.ins
#mkdir $TEXMF/tex/latex2e/tools
#mv -f *.sty *.tex .tex $TEXMF/tex/latex2e/tools
次に graphics パッケージの場合。
%cd ../graphics
%latex graphics.ins
#mkdir $TEXMF/tex/latex2e/graphics
#mv -f *.def *.sty grfguide.tex $TEXMF/tex/latex2e/graphics
graphics パッケージの場合には、dviware に合わせた .cfg ファイルを作って おく必要があります。以下は dvips を利用する場合の例です。
残念ながら dvi2ps-j では graphics パッケージはうまく 動きませんでした (中野)。 dvipsk を利用して下さい。
#mkdir $TEXMF/tex/latex2e/config
#cd $TEXMF/tex/latex2e/config
#echo \\ExecuteOptions{dvips}>color.cfg
#cp color.cfg graphics.cfg
ASCII-pTeX のサイト から、mendexk2.3g.tar.gz を get して下さい。
cd /usr/local/src
tar xvzf $FTP/mendexk2.3g.tar.gz
cd mendexk
mendexk-2.3g では、kpathsea lib を利用するようになっていますので、 kpathsea.a が利用できるように Makefile を変更しなければなりません。
find /usr/local/src -name kpathsea.a -print
などでファイルを探し、
mendex: $(OBJS) $(CC) $(OBJS) $(LDFLAGS) -o $@ ../kpathsea/kpathsea.a
の、kpathsea.a を参照している相対パスを書き直し、
make
cp mendex $TEXBIN
cp mendex.1 /usr/local/man/ja_JP.ujis/man1
とすれば出来上がり。
pTeX のインストールをしたところで、
METAFONT
のシステムも一揃い入っているはずですから、
これを用いれば各 pk フォントを作ることができます。
DVI ドライバによっては pk フォントを自動生成する仕組みになっていますが、
それでも良く使うものは一気に作ってしまっておく方が良いでしょう。
実際に私が作業するにあたり、非常に重宝したパッケージが ftp://akagi.ms.u-tokyo.ac.jp/pub/TeX/font/makefont.tar.gz です。以下、これを使うものとして話を進めます。
% mkdir makefont; cd makefont
% zcat (somewhere)/makefont.tar.gz | tar xf -
/usr/local/lib/texmf/mf/modes.mf
を見て、
自分の使うプリンタに適したエントリを選びます。
私の場合 360DPI の Epson MJ-700V2C には bjtenex
を、
300DPI の HP LaserJet IIIp には cx
を選びました。
% ./latex2e.sh bjtenex
のように実行すると、
360DPI 向けの各種フォントが実行ディレクトリに作成されます。
後はこれをどこに置くかです。
各 METAFONT
ソースに対応したディレクトリに置く、
というのも一つの考え方です。
私は一気にできてしまったものをまた分配するのが面倒だったのと、
pk フォントを Win95 マシンや他の Linux ホストで共有したかったため、
/usr/share/fonts/pk/pk300/
や /usr/share/fonts/pk/pk360/
というディレクトリにまとめて置き、
/usr/share/fonts
以下を NFS や samba で公開しています。
この際、フォントのサーチパスがデフォルトと変るので、
/usr/lcoal/lib/texmf/web2c/texmf.cnf
ファイルに変更が必要になります。
具体的には PKFONTS
のエントリを
PKFONTS = .:$TEXMF/fonts//pk/$MAKETEX_MODE:/usr/share/fonts/pk//
また pTeX 2.1.4 では
/usr/local/lib/texmf/ls-R
をいうファイルを作っておくと
各種ファイルの検索が高速になります。これは
# cd /usr/local/lib/texmf
# ls -LR /usr/local/lib/texmf /usr/share/fonts/pk > ls-R
のように作成します。
(L
はシンボリックリンクの先をたどるオプションです)。
VFlib は TeX、 PostScript などの文書で日本語を統一的に扱うための ライブラリパッケージで、広島大の角川先生が作業をしておられます。 日本語化 xdvi, dvi2ps-j などで利用されています。 最近の JE にも入っていたはずですが、とりあえず以下のようにしても作れます。
一次配布元は ftp://gull.se.hiroshima-u.ac.jp/pub/VFlib/ です。ミラーされているところも多いと思います。
% zcat VFlib-2.22.tar.gz | tar xf -
% cd VFlib-2.22/tools
% uudecode ../../VFlib-2.22.PATCH-1
% zcat ktestdiff.tar.gz | tar xf -
% patch -p < Imakefile.diff
% patch -p < ktest.diff
% cd ../src
% patch -p < ../../VFlib-2.22.PATCH-2
% patch -p < ../../VFlib-2.22.PATCH-3
% cd ..
% uudecode ../../VFlib-2.22-PATCH-4.updated
% zcat VF_FNTWV.patch.gz | patch -p1
ふぅ :-)、これで終わりです。
インストールマニュアルは TeX で記述されているのですが、
Web 版のマニュアル
もあります。
src/Makefile
を編集します。
このあたりは好みの別れるところですが... 私は以下の二点を変更しました。
vfontcap
ファイルの置き場所を変更
VFCAP = -DDEFAULT_VFCAP=\"/etc/vfontcap\"
INSTALL_BINDIR=/usr/local/bin
src
ディレクトリに入って以下の作業を行います。
% make
% su
# make install
c:\windows\fonts\
ディレクトリ
(hidden 属性になっているので注意) にある msmincho.ttc
と
msgothic.ttc
を例えば /usr/share/fonts/TrueType/
のようなディレクトリにコピーします。
Microsoft は、自社にライセンスのある TrueType フォントに関して、 自社 OS 以外での利用を認めない、という方針のようです。 本文書での msmincho, msgothic は適当な TrueType フォントの例を示すものとお考え下さい。
# cd /usr/share/fonts/TrueType
# ttindex msmincho.ttc
# ttindex msgothic.ttc
/etc/vfontcap
を編集します。
とりあえず
### TRUETYPE FONT (Windows fonts) r-microsoft-mincho|MicroSoft mincho:\ :ft=truetype:\ :ff=/usr/local/font/truetype/msmincho: r-microsoft-gothic|Microsoft gothic:\ :ft=truetype:\ :ff=/usr/local/font/truetype/msgothic:
ff=
のパスを
/usr/share/fonts/TrueType/msmincho
のように変えておけば大丈夫だと思います。
(ここは筆者の知識不足につき、識者のフォローを歓迎します。)virtual フォントは各種 PostScript プリンタが持っているフォントの癖を吸収するために導入されたもので、 dvi ファイルのフォントメトリック情報と PostScript フォントの間の仲立ちをします。 dvi2ps-j や dvipsk を利用する際には、これが必要になります。 VFlib と併用する際には、 最も基本的な日本語 PS フォントである モリサワフォントのメトリック情報を用いることにします。
virtual フォントを用意するためには以下が必要です。
japaneseAFM.tar.gz
vftool-1.2.tar.gz
前者は漢字 PostScript フォントの AFM ファイルで、 フォントメトリックの情報が記述されているものです。 アスキー pTeX と一緒に配布されています。 pTeX のソース の節をご覧ください。
後者は前者を用いて virtual フォントを作成するツールです。一次配布元は ftp://ftp.math.s.chiba-u.ac.jp/tex/ です。各所でミラーされているようですので archie してみてください。
/usr/share/fonts/AFM-j/
などに展開するなら
# mkdir /usr/share/fonts/AFM-j
# zcat (somewhere)/japaneseAFM.tar.gz /usr/share/fonts/AFM-j | tar xf -
% zcat (somewhere)/vftools-1.2.tar.gz | tar xf -
% cd vftools-1.2
Makefile
を編集します。
JFM
エントリを
/usr/local/lib/texmf/fonts/public/ptex/tfm
に変更。AFM
エントリを、先ほど日本語 AFM ファイルを展開した
ディレクトリに変更bkfonts
エントリに ${t3}
${t4}
を追加
% make a2bk
jfm
, vf-a2bk
ディレクトリができ、
その中に日本語のフォントメトリックと virtual フォントができます。
# mkdir /usr/local/lib/texmf/fonts/kanji
# cp -r jfm/ vf-a2bk/ /usr/local/lib/texmf/fonts/kanji/
以前は日本語パッチが散在していて、作るのがややこしいと言われていた xdvi ですが、 千葉大の山賀さんがパッチの取りまとめを行ってくださったおかげで、 最近では非常に簡単になりました。
まず xdvik-18f の本体 xdvik-18f.tar.gz
を入手します。
この文書の通りにこれまで実行してきた方はすでに手元にあるでしょう。
これは通常の pTeX と一緒に配布されており、
pTeX のソース
の節で示したところにあります。
山賀さんがまとめてくださっている日本語パッチは
ftp://ftp.ipc.chiba-u.ac.jp/pub/pub.yamaga/
が一次配布元になっています。 97/03/19 現在は
xdvik18f-j1.1p5.patch.gz
が最新版のようでした。
make の手順は付属の文書に非常に丁寧に記述されています。 ここでは概略のみ示します。
xdvik-18f.tar.gz
と xdvik18f-j1.1p5.patch.gz
を適当なディレクトリに置きます。
% zcat xdvik-18f.tar.gz | tar xf -
% cd xdvik-18f/xdvik
% zcat ../../xdvik18f-j1.1p5.patch.gz | patch -p
ここで README.xdvik18f-j1.1p5.patch
を良く読めば、
問題無く設定と作成が行えるはずです。以下は最も簡単な設定で行います。
XDEFS
の行に -DNOVFONTMAP
を指定します。
こうすると日本語の使える書体が明朝とゴシックのみになります。
多書体を使いたい方は、付属の文書を良く読んでください。
% cd ..
% ./configure
% make
% cd xdvik
% su
# make install
最後に /usr/local/lib/texmf/web2c/texmf.cnf
の
PKFONTS.xdvi
セクションに、
先ほど PK フォントを置いたディレクトリを追加します。私の場合は
PKFONTS.xdvi = .:/usr/share/fonts/pk//:$pkdir/$MAKETEX_MODE:
本節は土屋@京大さんよりいただいた情報に基づいています。
xdvi は、「最後にマークしたページのみ印刷」、 「マークした全てのページの印刷」など多彩な印刷指定を行なうことが出来ます。 このためには、 dviselect というコマンドをインストールしなければなりません。
dviselect をインストールするには次のファイルを用意して下さい。
SeeTeX-2.19.tar.gz
SeeTeX-2.19-2.19J.gz
これらのファイルは、
ftp://ftp.hipecs.hokudai.ac.jp/pub/TeX/drivers/SeeTeX/
や CTAN サイト の dviware/SeeTeX/ から入手可能です。
これを、次の様な手順でインストールすればよいでしょう。 ($FTP/ に archive file があるものとします。)
cd /usr/local/src
tar xvzf $FTP/SeeTeX-2.19.tar.gz
cd SeeTeX/
gzip -dc $FTP/SeeTeX-2.19-2.19J.gz | patch -p
xmkmf
make Makefiles
make
cp Dviselect/dviselect /usr/local/bin
cp Dviselect/dviselect.man /usr/local/man/man1/dviselect.1
chmod 644 /usr/local/man/man1/dviselect.1
dvi ファイルを PostScript に変換する dviware です。 同じ機能を持ったものに jdvi2kps, dvipsk などもあります。 dvi2ps 系ではページイメージを縮小して一枚に複数のページを印刷する nup というコマンドが付属してきます。 日本語の文字を出力する際に VFlib を利用してラスタイズまで行うことができ、 こうすると PS プリンタ側に日本語フォントが必要なくなります。
dvi2ps-j 本体のソースは
ftp://ftp.math.s.chiba-u.ac.jp/tex/
にあります。ファイル名は dvi2ps-2.0j-gamma.tar.gz
です。
コンパイル作業は特に難しくありません。ソースのアーカイブを展開し、
doc
install.doc/ の指示に従って Makefile
を書き換え、
make→make install するだけです。
これまでの作業によって VFlib が入っており、
これを利用する場合の作業は以下のようになります。
% zcat dvi2ps-2.0j-gamma.tar.gz | tar xf -
% cd dvi2ps-2.0j-gamma
Makefile
を編集します。私が変えた点は以下のようなものです。
CC=gcc
に変更CFLAGS=-O -DPOSIX
に変更
% make
% su
# make install
fontdesc
は dvi2ps-j で用いるフォント情報を指定するファイルです。
普通に dvi2ps-j のインストールを行った場合は
/usr/local/lib/dvi2ps/fontdesc
にあるはずです。
指定にあたっては
dvi ファイル中のフォントをラスタイズするかどうかでいくつかの選択肢があります。
VFlib を使って日本語フォントをビットマップに展開する場合、 非日本語対応 PostScript でも印刷できるようになります。 ただ、私のところでは縦書きをさせることができませんでした (本当はできるのかもしれません。識者の情報をお待ちしております)。
日本語 PostScript ファイルを印刷できる環境の場合は、
漢字の情報を展開しないで保存しておけば縦書き印刷ができます。
この場合作成される .ps
ファイルが小さくなるというメリットもあります。
英字フォントに関してもラスタイズしないでおくことは可能ですが、 この場合は PostScript プリンタで印刷する際に cm フォントなどの ps 版が必要になります。
以下、私の設定例を示します。
# dvi2ps font description file for VFlib with MJ-700V2C # # printer spec # resolution 360 # # header # include dvi2.ps # # configs # vfontcap /etc/vfontcap define f /usr/local/lib/texmf/fonts # # ascii font # font pk * 3 /usr/share/fonts/pk/pk360/%f.%mpk # # MakeTeXPK # define mode bjtenex define gen /usr/local/lib/texmf/fonts/tmp/pk/$mode font pk * 0 $gen/%f.%mpk font func * 0 \ !pre(dm),!pre(dg),!pre(min),!pre(goth),!pre(tmin),!pre(tgoth),\ exec(/usr/local/bin/MakePK %f %m %R %M $mode $gen),\ pk($gen/%f.%mpk) # # kanji font # # for VFlib kanji of ASCII Nihongo TeX # First, convert ASCII dvi -> VFlib kanji dvi by virtual font # font jvf * 0 $f/kanji/vf-a2bk/%f.vf # # Use VFlib Kanji Metrics # font jfm * 0 $f/kanji/jfm/%f.tfm # # VFlib mapping # map rml JSNR ^r-microsoft-mincho map gbm JSNR ^r-microsoft-gothic map ryumin-l JSNR ^r-microsoft-mincho map gtbbb-m JSNR ^r-microsoft-gothic # # If PS printer have Morisawa-Kanji # #map rml JSNR Ryumin-Light-H #map gbm JSNR GothicBBB-Medium-H #map rmlv JSNR Ryumin-Light-V #map gbmv JSNR GothicBBB-Medium-V #map ryumin-l JSNR Ryumin-Light-H #map gtbbb-m JSNR GothicBBB-Medium-H #map ryumin-l-v JSNR Ryumin-Light-V #map gtbbb-m-v JSNR GothicBBB-Medium-V
本節は土屋@京大さんからいただいた情報です。
dvi→ps converter としては、dvipsk-5.58f を利用しています。dvipsk は、 他の converter と比べて kpathsearch library との相性が比較的良く、 余分な設定も少なくて済むような気がします。
dvipsk-5.58f をインストールするには次のファイルが必要です。
また dvi2ps で用いる virtual フォントを用意するために以下が必要です。
dvipsk-5.58f.tar.gz
dvipsk-jpatch-p1.2.tar.gz
インストールの手順は、次の通りです。
cd /usr/local/src
tar xzvf dvipsk-5.58f.tar.gz
cd dvipsk-5.58f
tar xzOf $FTP/dvipsk-jpatch-p1.2.tar.gz dvipsk.patch | patch -s
sh configure
make
cd dvipsk
make install
$TEXMF/dvips/config.ps が設定ファイルになっています。JE の環境下では、
% How to print. o |lpr -Pps
の様に変更して、次の部分を
% Default resolution. D 360 % Metafont mode. (This is completely different from the -M command-line % option, which controls whether MakeTeXPK is invoked.) M bjtenex
のように各自のプリンタに合わせて書き換えれば、設定は終了です (VFlib, /etc/printcap の設定は完了しているとします)。
dvipsk は、なぜか $TEXMF/ls-R があると動作しませんでしたので、 私はこのファイルは消去しました。 体感上はほとんどサーチ速度に変化はありませんでした (中野)
MS-DOS では非常にポピュラーだった dviware です。 Unix 用には 2.43.3c というテスト版があり、 少々の変更で Linux でも動くようになります。 またある意味で VFlib の元になったプログラムであるため、 TrueType フォントの使い方はほとんど同じで、 VFlib のインストール の作業を行っていれば設定ファイルを書くだけで TrueType フォントが利用できるようになります。縦書きにも対応しています。
ソースは ftp://akagi.ms.u-tokyo.ac.jp/pub/TeX/dviout/test/t2433csr.tar.gz にあります。これを適当なディレクトリに置いたところから作業を始めます。
% mkdir dviprt
% cd dviprt
% zcat ../t2433csr.tar.gz | tar xf -
Makefile
を編集します。
-DBSD -I/usr/include/bsd
を追加。$(CC) -o dviprt $(OBJS) -lm -lbsd
環境設定に関しては DOS の dviprt とほとんど同じです。 まずプリンタ用のコンフィグレーションファイルを手に入れる必要があります。 DOS 用のものが Vector Design のライブラリ にありますので、ここから取ってくるのがわかりやすいと思います。 必要なファイルが入っているアーカイブは
utils/files.utl
というファイルを読めば、
目的のプリンタに対応したコンフィグレーションファイルが見付かると思います。
utils/cfg/
というディレクトリにあるはずです。
ちなみに Epson の MJ-700V2C には mj_360.cfg
、
HP の LaserJet IIIp には hp_ljp.cfg
というファイルを使いました。
これを /usr/local/lib/texmf/
にコピーし、
次いで設定ファイルを二つ作ります。
dviprt.par
と dviprt.vfn
が必要になります。
雛形は上記アーカイブの utils/par/
にあります。
これらを EUC コードに変換し、行末を CRLF → LF にして
/usr/local/lib/texmf/dviprt.par
/usr/local/lib/texmf/dviprt.vfn
dviprt.par を編集します。上記ファイルには詳細なコメントが入っていますので、 おそらくそれを見ながら設定できると思います。ちなみに私の手元のものを、 コメントを全部とった形でのせておきます。
TEXPK=/usr/share/fonts/pk/pk360/%s.%dpk;/usr/local/lib/texmf/fonts/public/ptex/tfm/%s.tfm -p=omj_360.cfg -LM=2.6mm -TM=8.5mm -vfn+
それぞれ
TEXPK
欧文 pk フォントと日本語のフォントメトリックファイルの位置を指定
-p
プリンタを指定。標準でサポートされているもの以外は
=o(cfgファイル)
という文法を用いる。
LM, TM
プリンタ上部、左部の印刷不能領域の設定
TrueType フォントを使う指定
-=common.par
次いで dviprt.vfn を編集します。 これもコメントの通りでほぼ大丈夫だと思います。 同様に私の手元のものをのせます。
%version = 2 %vfont_list 1, /usr/share/fonts/TrueType/msmincho, 1000, 1000, 0 2, /usr/share/fonts/TrueType/msgothic, 1000, 1000, 0 %jfm_list min, 1, a, a, n40, 100;0;0, , , 0 goth, 2, a, a, n40, 100;0;0, , 1, 0 tmin, 1, a, a, n40, 100;0;0, , , 0 tgoth, 2, a, a, n40, 100;0;0, , 1, 0