DVIファイルへの埋め込み


1. dviout の操作やパラメータの変更を dviout specials によって dvi ファイルに埋め込むことができます。もとのTeXファイルの行位置の情報は、source specials で埋め込めます。またプレゼンテーション・モード用には pause special があります。

2. dviout は、独自の拡張DVIファイルをサポートし、それによって任意のファイルをDVIファイルに埋め込むことが出来ます。埋め込みや取り出しには付属の dviadd.exe を使用します。

2.1. dviout の初期化を行う dviout specials\special{dviout `initialize ... } の ... の部分のみをinitial.parというファイルに書いて(複数の指定は改行で区切る) 埋め込むと、diout 起動時の初期化がこれに基づいてなされます。但し、# で始まる行は無視されます。たとえば

# This is a test.
  `keep TEXPK
  +TEXPK=^F/^s.tfm; -y=A4L


などのように書きます。ただし、#rem で始まる行があると、#endで始まる行が見つかるまで(無ければ最後まで)無視されます。

2.2. Font/Image Embedding機能により、DVIファイルで使われるフォントや画像ファイルを、自動的にDVIファイルに埋め込んでおくことができます。埋め込まれたものは dviout で自動認識されます。

2.3. 通常のdviwareは埋め込まれたものを認識せずに無視しますが、dviout は対応するspecialsによって取り込まれる画像データファイルHyperTeX<a href="file:...">で指されるターゲットファイル、あるいは-TEXPK:^F/で指定されるフォントとして用いることができます。
そのほか、-ftt: など dviout が参照するファイルも、ファイル名の前に^F/をつけて指定することによって埋め込んだものを利用できます。

たとえば、foo.dvi が LaTeX2e の graphics package を使って

\usepackage{graphicx}
...
\includegraphics*[height=6cm]{myfig.ps}

としてmyfig.psを読み込んでいるとき

dviadd myfig.ps foo

とすると、foo.dvimyfig.ps が埋め込まれます。この foo.dvimyfig.ps 無しに dviout で直接扱えます。

表示中のDVIファイルに埋め込まれたファイルがあれば、その情報は Help->Information, Buffer Info. で示されます。
 
他のOSでもソースファイルdviadd.cをコンパイルすればdviaddコマンドが使えるので、dviwareの実行前に埋め込まれたファイルをdviaddで取り出すように設定しておくと、dvioutと同様に拡張DVIファイルを扱えます。

注意: tar形式のファイルを使うことによっても、同様のことが可能です。さらに gzip -d ... がサポートされていれば、これらを gzip によって圧縮したファイル(拡張子は末尾に .gz を付加したもの)を扱えます。