基本的に,TeX には縦倍角とか横倍角とかの概念はありません. (フォントとメトリックをいじれば可能なのかもしれませんが..私にはできま せん.)
実は,去年結構こだわって,「横倍角」という古いワープロの変な文字を出す
試みをしたことがあります.思い出して,ちょっと書いてみます.
ただし,うまくできるかどうかは環境に因ります.
まず,ASCIIの日本語TeXであること.
(NTT版で同様のことができるかどうかは,よく分かりません.)
そして,pltotf (および tftopl) というコマンドが必要です.
(UNIXのASCII日本語TeXをちゃんとインストールするとあるはずです.)
さらに,dviファイルから出力するドライバに依存します.
方法は,min10.pl というファイルを元にします.
これが無い場合,tftopl コマンドを使って,min10.tfm から作成することが
できます.min10.pl で,
(CHARHT R 0.777588)というのを含む行が幾つかありますが,これは文字の高さを定義しています. この値 0.777588 をすべて半分の 0.388794 にします.エディタで修正して, 例えば min10y.pl などという名前で保存します.あるいは,sedコマンドを 使って
% sed 's/0.777588/0.388794/' min10.pl > min10y.plとします.
% pltotf min10y.pl min10y.tfmこの,min10y.tfm は,「横倍角」のフォントのメトリックを与えるものです. これを min10.tfm と同じディレクトリにコピーします.
\else % ASCII-jLaTeX \font\twtygt = goth10 \@magscale4 \let\twentyonegt=\twtygt \let\seventeenmin=\svtnmin \let\seventeengt=\svtngtとなっているところを
\else % ASCII-jLaTeX \font\twtygt = goth10 \@magscale4 \let\twentyonegt=\twtygt \font\svtnmin=min10y \@magscale5 % <------ この行を追加 \let\seventeenmin=\svtnmin \let\seventeengt=\svtngtします. あとは,ふつうに jLaTeX すれば,\seventeenmin の文字が「横倍角」になり ます.(plain TeX版の方も同様にできるでしょ,きっと.)
/f13 /bf0 99.375 -99.375 BFE ^^ ^^^^^^ ^^^^^^^のよな行を (波線の数字は,ファイルやサイトに因って違うはずです.同じような行が幾 つかありますが,どれを変えるのかは試行錯誤でさがしてください.)
/f13 /bf0 99.375 -49.6875 BFE ^^^^^^^^ (半分にする)と変えてやると,「横倍角」を出すことができます.
こだわり派オプションがポストスクリプトプリンタ
(か対応ドライバ)のみのサポートということですので,
MS-DOS等でdviout/dviprtを使っている場合の
簡単な解決法をかきます.
# 私も普段はdvi2ps-jを使っているのですが.
基本的には,上記の方法と同じですが,
dviout/dviprtのパッケージのutils/exjfontという
ディレクトリーの中に,min10.tfmから
tftoplとpltotfを使って作成したdpminmja.tfmという
平体用のファイルがすでに入っているので,
それをjfmファイル用のディレクトリーに移して使います.
次に,lkkh.styのversion-upのたびに書き換えるのも面倒なので,
lkkh.styは書き換えず,別のファイルで次のように再定義しておいて,
lkkh.styより後にそのファイルを読み込むようにしています.
ついでに,8ptと10ptの文字も多少修正しています.
\font\seventeenmin=dpminmja at 23pt%横倍角 \font\tenmin=min10 at 11pt \font\tengt=goth10 at 11pt \font\eightmin=min10 at 8.2pt \font\egtgt=goth10 at 8.2ptASCII日本語pTeX+dviout/dviprt以外の組み合わせで, うまくいくかどうかは確かめていません.