Copyright: dviout for Windows Ver.3.17


目次

          dviout for Windows
          Ver.3.18, February 11, 2006
      Copyright(c) 1990-2006 SHIMA

インストール
仕様
プレビュー
移動
印刷
文字列サーチ
文字列コピー
HyperTeX
DVIファイルへの埋め込み
ユーザインタフェース
プロパティーシート(Property Sheets)
パラメータ
情報表示
他のプログラムとの連携
プレゼンテーション・モード
起動と終了
アンインストール
知られている不都合箇所
Q&A
配布
付属のプログラム
dviout User's 倶楽部
補記
用語集

なお、dviout for Windowsは、Borland C++ 4.5/5.0/5.01, C++ Builder 4.0 または Visual C++ 4.0/5.0/6.0/2005 により、このヘルプは、Make Helpを使って、作成されています。


仕様

dviout for Windowsは、Windows95/98/Me および、WindowsNT/2000/XP 用の TeX の device driver です。従来のMS-DOS版の dviout と dviprt の機能を持っています。

1. 使用可能なTeX
・通常の欧文のTeX（含NTT JTeX, Omega(-j), lambda(j)）
・アスキーの日本語pTeX

2. 拡張機能
・tpic specials(文字や画像の一次変換や色づけなどの独自拡張を含む)
・color specials(Check color specials:スタックのページ独立性チェックとDVIファイルの修正機能)
・PostScript specials(カラー対応、LaTeX2eのgraphics package、PSfrag、dvips用DVIファイルをサポート、要Ghostscript)
・EPS/PS/WMF/EMF/PBM/BMP/BMCを含む各種形式(Susie plug-inによりPNG/JPEG/TIFF/PCDなどもサポート)画像データファイル読み込み(-spi:)
・gzipで圧縮された画像ファイルやDVIファイルを読み込み可能
・HyperTeX specials
・dviout specials
・source specials(compatible to MikTeX & yap, enhanced by string search)
・画像データ、フォント、初期化パラメータのDVIファイルへの埋め込みとその利用(Font/Image Embedding)
・tar形式からの直接読み込み

3. プレビュー機能
・gray scale（カラーの文字の場合は、アンチエリアシング）表示
・２種類のルーペ（cf.[Common]）機能
・2/4/16ページ同時表示機能(Display Menu)
・グリッド線の表示機能（View Menu）
・プレゼンテーション・モード(cover sheet, draw lines, pause special, continuous scroll, pop-up menu)
・取り込み画像ファイルに対応したグラフィックエディター呼び出し機能(-gsrc:)
・dviファイルの更新による表示の自動更新(-renew:)

4. 印刷機能
・Windows95/98/Me/NT/2000/XP のドライバがサポートしているプリンタでの印刷（カラー対応）やFAX送信
・内蔵の独自のドライバdviprtによる印刷
・dviout以外の印刷プログラムの制御
・袋綴じ印刷
・縮小／拡大印刷機能
・ページ指定オプション

5. 欧文フォント、および、NTT JTeXの和文フォント
・PK, PXL1001, PXL1002, PXL1003 フォーマット（GFは非対応）のフォント
・欧文TrueTypeフォント(cf. Q_F14), OpenTypeフォント
・PostScriptフォント(要Ghostscript, gsftopk, ps2pk)
・Virtual font, subfont(-TEXSUBF:)
・METAFONTによる不足フォントの自動生成

6. フォントライブラリ
・FARフォントライブラリ
・GTHフォントライブラリ
・FLIフォントライブラリ

7. アスキーpTeX および NTT JTeX の和文フォント
・Windows 3.1 や Windows95/98/Me/NT/2000/XP のTrueType和文フォント
・JXL4フォント
・固定サイズのビットマップ和文フォントおよびそれを独自の形式に圧縮したもの
・「書体倶楽部」形式のフォント
・TrueType和文プロポーショナルフォントのjfmファイル作成機能

8. その他の機能
・ファイルとフォルダの履歴
・文字列サーチ
・文字列コピー(クリップボードにコピー可)
・EMF/BMP/BMC/PDF/PNG(Q_O7) (or PBM, G3FAX, EPSF)等のファイル形式画像出力
・和文/英文オンラインヘルプ
・他のプログラムとの連携
・TeXのソースファイルの入力支援機能（Help → Help TeX）
・表示と印刷とでパラメータの自動変更
・任意のキーに各種機能を定義可能（[Key]）
・ユニコード
・和文TrueTypeフォントのjfmファイル作成機能（付属のプログラム propw を利用）
・パラメータの設定状態を10種類まで名前をつけて登録可能([REGISTRY])
・ファイルへのパラメータの設定値の出力と読み込み


dviout User's 倶楽部

dviout User's 倶楽部は、ユーザの間で以下の情報を交換するために mailing list の形で開設されました。

1. ユーザが、dviout/dviprt の使用に関して起きた問題点、そのほか、仕様、バグ、工夫や改良、パッチなど

2. より広く、TeX や 関連するソフトウエアー、あるいは、dviout mailing list 参加者にとって有益な情報

アドレスは

  dviout@akagi.ms.u-tokyo.ac.jp

です。自由に参加および脱会ができ、その手続きは、自動化されています。

subscribe address

の１行のみの中身からなる mail を、上記アドレスに送れば、差し出し人のアドレスで、メンバーに自動登録されます。参加メンバーが上記アドレスに出した mail は、登録メンバー全員に配送されます。脱会するには、subscribe の代わりに

#bye
#quit

の２行のみの中身のmailを、上記アドレスに送ります。より詳しい情報やmailのSubjectの一覧（mailの頻度）などは、

  http://akagi.ms.u-tokyo.ac.jp/dvioutML.html

から得ることができます。

これらは、dviout開発者により運営されています。なお、開発者宛（cf.配布）のmailは、個別に対応しきれませんので、返事を期待されないようお願いいたします。

注意：ここの内容は、1996年12月の時点での状況です。将来変更される可能性があります。


知られている不都合箇所

・エラー表示やそれに対応する処理が不適切な部分がある。

・１ページのみからなるdviファイルに対し、印刷ダイアログでのコピー枚数指定が無効になることがある（一度 [Setup...] を押して、[プリンタの設定]に入り、[OK]で抜け出すと、枚数指定が可能になるようです）。

・Microsoft の IntelliMouse のホイールボタンを押し下げた状態のまま、マウスカーソルをdviout外部まで運んで、そこでホイールボタンを開放すると、dvioutでのホイールの操作が、ホイールボタンを押したままの状態と同じになる、など若干動作がおかしくなる。
dvioutの中で再度ホイールボタンをクリックすれば、これは解消される。

・サービスパック３のパッチを当てたWindows NTには、TrueTypeフォントの読み出しに関して致命的なバグがあり、dvioutでも不都合が生じます（Windows NTがフリーズする）。Microsoftから修正パッチが提供されています。

・高解像度で、カラー画像を扱えない、または、極端に処理速度が落ちる。これは、Windows側の問題のようですが、600dpi以上の解像度で起こりやすいようです。

・PostScript プリンタで、画像などが重なった部分や、白抜き文字の印刷が正しくなされないことがありますが、これは Windows の PostScript プリンタドライバのバグによるものです。他のプリンタでも、同様な症状がある場合はプリンタドライバのバグです（Q_P10）。

・プレゼンテーション・モードでタスクバーが完全に隠れないことがあります。タスクバーやdvioutのWindowをクリックする、あるいは、タスクバーのプロパティーの「常に手前に表示」や「自動的に隠す」のチェックの状態を変えてみてください。

・和文フォントの括弧などの記号が左に約一文字幅ずれて印刷されることがあります。これはWindows98のバグで、MS P 明朝などのプロポーショナルフォントに変える、[Graphic]のcolor specials:で replace(def) を選んで印刷する、などの方法で回避できます。


Make Help
Make Help Ver.1.01c 1996/Ver.1.02 1997
Copyright (c) 1996-1997, Yama-BBS の山本

を使って、このHelpは作成されました。


付属のプログラム

dviout for Windowsのパッケージには、以下のプログラムが付属しています。それぞれパラメータなしに実行すると簡単な説明が表示されます。

chkfont: dviファイル、フォントメトリックファイル(tfmファイル/jfmファイル)、フォントグリフファイル(pk/gf/pxl)、フォントライブラリファイル(GTHフォントライブラリ/FARフォントライブラリ)などのフォント情報を表示します。

bmc: BMCその他の画像ファイルに対するユーティリティーです。
・PostScript画像を取り込む際に用いる独自のBMC画像圧縮ファイルとBMPファイルとの相互変換
・バイナリヘッダを持つEPSFファイルからそのヘッダの除去
・LaTeXのgraphics packageで取り込み可能な形式での各種画像ファイルの BoundingBox 情報の出力
・各種画像ファイルのBMP画像ファイルや他の画像フォーマットへの変換
・画像ファイルのサイズや色数情報などの表示
などの機能があります。
なお、EPSF/BMP/BMC/WMF/EMF以外の画像を扱うには、それに対応した Susie plug-in (cf.-spi:）が必要です。また各種画像フォーマットへの変換には、ABC output plug-in が必要です。

createBB: bmc を使って、BoundingBox 情報のファイル *.bb を作成するためのインタフェース。

dvispc: DVIファイルを解析するユーティリティーです
・color specials や tpic specials を使うと、DVIのページ独立性が失われることがあるが、それを修復する。
・「DVIファイル <-> Text ファイル」の相互変換

dviadd: 任意のファイルのDVIファイルへの埋め込みと取り出しを行います。Image/Font Embeddingで使われます。

etfdump: 埋め込まれたフォントやinitial.parの詳細な情報を表示します（Font/Image Embedding）。

srctex: source specials や pause specials を TeX のソースに埋め込む、あるいは、除去します。

convedit: srctex で変換したファイルをTeXコンパイラが処理するときにエラーが生じた場合、TEXEDIT の設定で元のTeXファイルの該当個所が編集できるようにします。

rawprt: 標準入力のデータをそのままプリンタに出力するプログラム

propw: プロポーショナル和文フォントのjfmファイルを作成します。

optcfg: プリンタの設定ファイルのソースをdvioutが読み込み可能な形（CFGファイル）へ変換する。その逆変換も可能。Windowsのプリンタドライバを用いる限りは、これは不要。

ttindex: dviout内蔵の独自のTrueTypeフォント展開ルーチンを使って和文TrueTypeフォントを用いる場合に必要なフォントインデックスファイル *.tti を作成するプログラム。
普通は展開はWindowsのシステムに任せるので、これは使わない。和文TrueTypeフォントの埋め込み（Font/Image Embedding）や非日本語Windowsで和文フォントを用いるきに使う。


補記

dviout は、多くの方の協力を得て成長した MS-DOS版を経て、現在の Windows95/98/NT 版になりました。

dviout の以下の機能に関しては、次の方々の多大な協力を得ており、ここに感謝いたします。そのほかにも、数々の点で多くの方のサポートを受けてきたことを、合わせて感謝いたします（SHIMA）。

プロトタイプ                     TSG(Science group of Tokyo univ.)
マニュアル                       Y.Kusumi, 千秋, とがし
Ver.2.34における統合化           sempa
PC-9801 ハイレゾモード           OkI
DOS/V                           SOLITON, hero.h
AX                              Akiii
J-3100                          sempa, hero.h, 千秋
HP100LX                         HARUYA
ESC/Page                        冨家, OkI
LIPS III ESC/Page 統合          OkI
tpic specials                   Oh-Yeah?
新サイズオプション               吉澤
pTeX                            Naochan!
NTTJTeX                         八雲
書体倶楽部フォント               吉田秀樹, Minagawa, 向内
JG Font                         Naochan!
TrueType Font                   松田
FLI形式フォント                 吉崎栄泰
システムフォントの縮小/拡大      Naochan!, 吉澤, 松田
不足フォント自動生成機能         八雲
PostScript                      内山孝憲
PBM画像データ                   八雲
GIF画像データ（現在削除）        淺山
ページ記述言語埋め込み           岩井貞之
プリンタ定義ファイルの拡張書式   淺山
Windows95/98版                  乙部
Windowsでのrawモードプリンタ出力 松田
Virtual Font                    松田
PSfrag                          松田
VC++への対応                    頼本賢治
subfont                         Cho Jin-Hwan
英語版Help                      Scientific Software Department, Application Software Division, NEC Corporation, 奥村晴彦, 本郷廣生

その他、多くの一般のユーザの方からの報告が、より良いものへの成長の原動力でした。今後も、dvioutのバグやHelpの記述ミスなどにお気付きの場合は、dviout User's 倶楽部、あるいは、開発者(cf.配布)に連絡してくださるようお願いいたします。


アンインストール

dviout のインストール前の状態に戻すには、以下のようにします。

1. Option->Uninstall を実行し（これにより、dvioutが書き込んだ Registry の内容がすべて削除され、スタートメニューからdvioutがはずされます）、dviout を抜け出ます。

2. dviout をインストールしたときのファイル dviout.exe, dviout.hlp, dviout.cnt および、関連して追加したファイルがあればそれも（dviout.par, dviout.vfn やドキュメント類）Windowsのエクスプローラを使って、ごみ箱に捨てます。

注意１. dviout は、Windowsのシステムディレクトリには、特別のファイルを何もインストールしません。また、その中のファイルを変更しません。システムに関連するのは Registry のみです。インストール時には、dviout 関連のファイルは、まとめて一つのディレクトリに入れておくとよいでしょう。

注意２. dviout のバージョンを上げる場合は、通常 dviout.exe, dviout(e).hlp, dviout(e).cnt を新しいものと入れ替えるだけです。それ以外の場合は、ドキュメントに記載があるはずなので、それをご覧ください。Option->Uninstall は、必要ありません。これを行うと、設定していたパラメータの値が引き継がれませんのでご注意ください。

注意３. Option->Uninstall で、dviout 関連の Registry を削除した後、dviout を起動すると、再び Registry に書き込みが行われますので、ご注意ください。

注意４. Option->Install で、設定をやり直す場合は上書きで以前の設定が消されます。その前にアンインストールする必要はありません。


プレビュー

dviout for Windowsは、印刷の時と同じ解像度（dpi)のフォントを、（gray scaleを用いて、縮小し）より低い解像度の画面に出力して、Window画面でプレビューすることができます（より詳しくは、Q_O30）。

同じ解像度の画面の場合、一般には gray scale の方が、高品質に見えます。

より高速に表示したい場合や、gray scaleを用いない場合は、従来の118dpi程度のフォントを用いるとよいでしょう（このときは、Property Sheets->[Display]で、当倍scaleを指定して、gray scaleでないのをデフォルトにするとよいでしょう）。

また、マウスの右ボタンのクリックにより、ルーペ機能を使って、ページの一部分を拡大／縮小表示することができます（ルーペの調整は、Property Sheets->[Common]）。

画面の、Status Barなど、幾つかのものは取り外し可能です（View-> ...）。取り外すことにより、プレビュー画面をより広く使うことができます。


パラメータのリスト
dviout for Windowsには、以下のようなパラメータがあります。パラメータの設定例も参照してください。

・フォント関連: -TEXROOT: -TEXPK: -TEXFONTS: -TEXSUBF: -L: -F: -FB: -Fod:
・フォント関連（その２）: -A: -c: -gen: -TEXPKD: -TEXFLI: -ttf: -Fkeep: -virtual: -ftt:
・フォント関連（その３）: -TEXKNJ: -ntt: -nttF: -S: -J: -JC: -vfn: -g: -Jfm: -Jbt: -Jgt: -G:
・印字位置／範囲関連: -area: -LM: -TM: -RM: -BM: -OX: -OY:  -HC: -VC: -HS: -VS: -dviprt:
・サイズ／解像度関連: -y: -dpi: -dpiv: -mag: -e: -varf:
・表示関連: -BMP: -scale: -t: -bright: -base: -box: -sdpi: -cmode:
・グラフィック関連: -tpic: -GS: -gsx: -GIF: -gdat: -gfit: -gow: -gclip: -gbox: -gsize: -color: -spi:
・HyperTeX関連: -hyper: -hyperoff: -href: -hname: -hbuf:  -sdpi: -Browser: -ToEdit:
・Search関連: -search: -sdpi: -sFont:
・システム関連: -br: -bb: -bf: -multi: -log: -renew: -button: -macro: -Wshow: -file: -mode: -src: -gsrc: -Set: -isp:
 -texhelp:


パラメータの設定例

300dpiのLBPプリンタ（LIPS III）で、Windowsのプリンタドライバでなくてdvioutのドライバを使って印刷を行う場合の例です。

次は、起動後に Option -> Non-default Parameters で表示されたものですので、以下にあるパラメータ以外はデフォルトのまま、ということになります。

button=+
GIF=4
gsx=c:\aladdin\gs6.0\bin\gswin32c.exe
gdat=.;c:\aladdin\gs6.0\lib
gen="`c:\usr\local\bin\mktexpk.exe ^s ^d ^D ^M"
TM=5.0mm
BM=5.0mm
LM=5.0mm
RM=5.0mm
dviprt=+`l
TEXFONTS=^r\tfm\\
src='c:\Program Files\Hidemaru\Hidemaru.exe^s/j%d "%s"'

なお、Option -> All Parameters で、すべて書き出すと、以下のようになります。

mag=-1
half=-
br=0x64000
bf=0x64000
bb=0x3e8000
multi=2
renew=+
button=+
dpi=300
dpiv=0
e=0
t=16
tpic=2
GS=1
GIF=4
gsx=c:\aladding\gs6.0\bin\gswin32c.exe
gdat=.;c:\aladdin\gs6.0
gbox=-
gow=-
gclip=+
gfit=+
gsize=-
gclip=+
color=+
spi=^$
cmode=0
search=192
sFont="cmex*lasy*lcircle*line*logo*msam*euex*ascgrp* cmsy*cmbsy*msbm*eusm*eusb*"
sdpi=150
hyper=0x1c060
hyperoff=0
href=0x1000
hname=0x800
hbuf=0x20000
Browser=^$
L=2
c=-
Fkeep=+
F=^$
FB=0
A=0
K=^$
G=goth;jisg
g=+
JC=
varf=-
base=-
box=-
gen="`c:\usr\local\bin\mktexpk.exe ^s ^d ^D ^M"
vfn='
%version=2
%vfont_list
1,"ＭＳ 明朝"
2,"ＭＳ ゴシック"
3,"@ＭＳ 明朝"
4,"@ＭＳ ゴシック"
5,"cmr10"
%jfm_list
min,1,a,a,n,0;0;0,,1,0
goth,2,a,a,n,0;0;0,,1,0
tmin,3,a,a,n,0;0;0,,1,1
tgoth,4,a,a,n,0;0;0,,1,1
default,1,a,b,n,0;0;0,,1,0
tdefault,3,a,b,n,0;0;0,,1,1
edefault,5,a,a,n,0;0;0,,1,0
'
ttf=1
ftt=^$
virtual=+
Fod=+
nttF=^$
ntt=-
S=1000
J=0
Jbt=+
Jgt=-
Jfm=+
y=A4P
PW=210.0mm
PH=297.0mm
area=+
TM=5.0mm
BM=5.0mm
LM=5.0mm
RM=5.0mm
MW=0.0mm
MH=0.0mm
OX=0.0mm
OY=0.0mm
HC=-
VC=-
HS=0.0mm
VS=0.0mm
edge=16
log=^$
Wshow=-
BMP=4:4:800
scale=4:4:800:2:2:800:6:6:800:1:1:800
bright=255
dviprt=+`l
TEXROOT=^T\fonts
TEXPK=^r\pk\\^s.^dpk;^r\tfm\\ptex\^s.tfm;^r\vf\\^s.vf
TEXPKD=^$
TEXKNJ=^$
TEXFLI=^$
TEXFONTS=^r\tfm\\
TEXSUBF=^r\..\ttf2pk\\;^r.\ttf2tfm\\
macro='!A!Zdy!pdl !A!N!Q!F;!A!T;!ADX;fn!b !A!Z!pdf !A!Z!pdl "-OX=0mm -OY=0mm !I"'
src='c:Files.exe^s/j%d "%s"'
gsrc=^$
texhelp=-NULL=(554,-20)-(1026,700)
isp=^$
file=
key=$$:JB=^B:DC=^C:JG=^G:JH=^J:FN=^N:FO=^O:FP=^P:SU=^R:SD=^S:JT=^T:JX=^X:DH=^_:JI=/
key=D1=1:D2=2:D3=3:D4=4:DF=5:DL=6:DT=7:DS=8:D6=9:JF=<:JL=>:JF=F:JL=L:JM=M:JN=N:JP=P
key=JQ=Q:JR=R:JL=l:JM=m:JN=n:JP=p:JQ=q:JR=r:HH=0:SD=2:SU=e


プロパティーシート
  [CONTENTS], [Display], [Resolution], [Font], [Font2],
  [WinJFont], [JFont2], [Key], [Search], [HyperTeX],
  [Common], [Graphic], [Printer], [Paper], [System], [REGISTRY]


HyperTeX

HyperTeXは、TeXに HTML(Hyper Text Markup Language)の Hyper Jumpの機能（他の資源へのリンク情報とリンクのターゲットとしての情報）を付加したもので、HyperTeX specialsによって実現されます。

dviout は HyperTeX specialsを解し、ホットスポットでマウスの左ボタンが押されたとき、その文書内でのジャンプや、ローカルな他のdviファイルへのジャンプを実行するとともに、それ以外の資源へのリンクを、拡張子によるWindowsの関連付け機能を使ったり、WWW browserを呼ぶことにより、実現しています。

ホットスポットの上にマウスが移動すると、マウスの形状が変わり、ステータスバーにリンクの情報が表示されます。

URL(Universal Resource Locator)が指定された文字列を、どのような色付けで表示するか（デフォルトでは文字を青色にし、アンダーラインをつける）、またリンクを解決するための情報のキャッシュバッファをどの程度とるか、などを指定できます（Property Sheets->[HyperTeX]）。

また、foo.dvi という HyperTeX speiclas を含む dviファイルのアンカー（HTML文書や、HyperTeXの文書からリンクを張るときの目印）のラベル名に、Chapter1 というものがあるとすると

dviout foo #Chapter1

と起動することにより、foo.dvi の表示をそのアンカーが打たれた場所から始めることができます。

dviファイルのdvioutへの関連付けをしておけば、WWW browserが .dvi という拡張子をもつファイルを読むと、自動的に dviout で表示がなされます(cf. no more dviout)。

画像ファイルなどの取り込みがあるdviファイルの場合、DVIファイルへの埋め込み機能を使うと一つのdviファイルになるので便利です。

なお、文字列サーチで直接アンカーを書いて、そこを探すこともできます。

dviout で、付属のサンプル hyperdvi.dvi, sample.dvi をご覧ください。


文字列サーチ

dvioutでは、文字列サーチができます。アスキーpTeXにおいては、２バイト文字（ひらがなや漢字など）もサポートしています。

探す文字列は、Search -> Find... あるいは、ツールボックスのコンボボックスから入力できます。以前に探したのと同じ文字列を使う場合は、コンボボックスの矢印を押して、リストから選択できます。

単語単位で探す： 英字のアルファベットのみからなる文字列のときのみ有効です。入力した文字列の前後に空白があるかどうかがチェックされます。ただし、途中の空白は無視され、"this is" と "thisis" は同じものと解釈されます。

大文字と小文字を区別する： これのチェックをはずすと、１バイト文字の通常のアルファベットの大文字と小文字を区別しないでサーチを行います。

見つかった文字列をどのように表示するかは、Property Sheets->[Search]で設定できます（デフォルトでは、文字列が赤く表示される）。無視すべきフォントは -sFont: で指定します。

注意: 通常の文字や若干の記号などが検索文字列に指定できますが、日本語のWindowsの場合は、上位ビットが立った 1 byte 文字などはサポートされません。

注意: 先頭に空白を一つ空けて指定することにより、HyperTeX でのアンカーの文字列、あるいは source specials による TeX のテキストの行番号で探すことが出来ます。

たとえば、"_#name1" は、HyperTeX のアンカーname1 を、"_325_fo.tex" は source specials による fo.tex の 325行目を表します（_ は空白）。後者で、"_325_*" という指定も可能です。
さらに fo.tex の235行目にある "This book" という文字列の検索は、235/This book と書いて指定でき、たとえば、"_325/This book_fo.tex" とします。
なお、"_325"は、325ページという指定で、さらに = をつけて "_=http://akagi.ms.u-tokyo.ac.jp" のように URL を書くことも可能です。


文字列コピー

マウスカーソルがプレビュー画面の文字列の上にあるとき、SHIFTキーを押しながら、マウスの左ボタンをクリックすると、ダイアログボックスが開いて、その文字列が取得できます。

最初の[Copy]ボタンがデフォルトなので、そのままSpaceかEnterキーを押せば、Windowsのclipboardにコピーされます。

一方[Add]ボタンを押すことにより、続く文字列が取得できます。逆に、[Delete]ボタンで追加した部分を順に削ることができます。通常の英文の場合は、ほぼ単語単位で追加と削除がなされます。

[Full]で取得した文字列全体を表示します（3000字程度まで）。ここでさらに[Add]ボタンを押すと、最初の状態に戻ります。

文字列は、編集可能です。また[Copy]ボタンやマウスの右ボタンを使って、クリップボードにコピーできます。

[Execute]ボタンは、エディットボックス内の文字列が、HTMLの飛び先（たとえば、http://akagi.ms.u-tokyo.ac.jp/）であるか、拡張子が関連づけられたDISK上のファイルであるとき、それを実行します。

注意： 記号の部分やNTTJTeXの和文の部分は、正しくない文字列が取得されてしまいます。必要なら、このような文字列は、適当に編集して除いてください（cf. -sFont）。

注意： CTRLキーとSHIFTキーを同時に押して、さらにマウスの左ボタンをクリックすると、ポイントされた文字の情報を表示します。


dviout, dviprt はフリーソフトウエアーであり、原則的に、実行ファイルと共にdvioutのソースファイルも公開されます。これらのパッケージは、自由に配布することが出来ます。これを書いている時点では、以下から最新版やその情報を得ることが出来ます。

    http://akagi.ms.u-tokyo.ac.jp/ftp-j.html#TeX

フリーソフトとしてではなくて、商品に組み込むときは、開発者(oshima@ms.u-tokyo.ac.jp)までご連絡下さい。ただし、一ヶ月以上に渡って返答が無いときは、この限りではありません。

なお、開発途中の版は、配布に制限がつく場合もあります。その場合は、付属のドキュメントをご覧ください。そちらの記述が優先されます。


プレゼンテーション・モード

プレゼンテーション・モードでは、メニューバーなどの枠なしで全画面でdviファイルが表示されます。カーソルは通常の矢印になります。[ESC]キーによってこのモードへの移行と抜けだしがなされます。マウスカーソルは、カーソルを移動した時のみ表示されます。

Presentation type として以下のいずれかが指定可能です。

general screen: 一般の色の紙面と背景(default)
white screen: 白の紙面と背景で、黒の文字
black screen: 黒の紙面と背景で、白の文字
white background: 背景を白にする
black background: 背景を黒にする

上記の gerenaral screen, white screen, black screen 以外では、ページ移動やルーペによって画面がちらつく可能性があります。

プレゼンテーション・モードでは、Display->Size->Fit, Full（デフォルトでは、[5], [6] のキー）は、gray scaleを用いた整数分の１の縮小と -e: -varf: による拡大／縮小とをあわせてpixel単位で正確になされます。このときは、フォントにTrueTypeを用いる方が綺麗でしょう。

紙面の端の余白をカットするには、あらかじめ Presentation->Cut Edgeを実行しておきます。Display->On, CutやOption->Setup Parameters->[paper]で細かな調整ができます。

実際のプレゼンテーションでは、View->Seamless Hyperjump をチェックし、プレゼンテーション・モードで、上記の Fit または Full を用いるとよいでしょう。

Display->Y-two pagesのチェックをつけた場合、プレゼンテーション・モードでは縦方向を継ぎ目なくスクロールしていくことが出来ます。Display->Fullと併用するとよいでしょう。

SHIFTキーを押しながらマウスの左右のボタンのクリックによって、線を描くことができます(cf. プレゼンテーションでのキー操作）。

マウスで移動できる cover sheet によって、紙面の一部を隠したり表示したりすることができます。これには pause special を用いることができます。

[Space]キーで進行していくプレゼンテーションで、紙面のある部分の表示／非表示や内容の変更などを含むものが、dviout specials の `+<levels> を用いて実現できます。

SHIFT+F1 によって、キー操作一覧が表示されます。
SHIFT+F12 によって、ページ移動の他、線画やカバーシートの設定ができます。

Display->cross pages, 16 pages（デフォルトでは、[8], [9] のキー）を利用すると便利です。このときは、右のマウスボタンでクリックしたページにジャンプできます。

さらに、dviout specials やそれを HyperTeX specials に埋め込んだものも利用可能です。

注意 プレゼンテーション・モードに入ると、-cmode: がデフォルトの auto mode(p2) であった場合、replace(def)に変更されます。逆に抜け出ると、プレゼンテーション・モードに移行する直前の -BMP: -e: -varf: -cmode: の値が自動的に復元されます。

プレゼンテーション・モード起動時のデフォルトは、Presentation Modeで設定の保存ができます。


cover sheet

メニューバーの View -> cover sheet をチェックしておくと、プレゼンテーション・モードで紙面の一部を覆い隠すことができます。以下のいずれかの cover type が指定できます。

bottom: 下方を覆う
right: 右方を覆う
left:　左方を覆う
bottom + right: 下の右方を覆う
bottom + left: 下の左方を覆う

最初は全紙面が cover sheet（カバーシート）で覆われていますが、それはマウス、あるいは、pause special で cover sheet を動かしていくことができます。

cover sheet を使っているページより前のページは、cover sheet が除去されたページと見なされます。

1. マウスの左ボタンを押し下げ、必要ならその後右ボタンをクリックしてマウスカーソルを上下や左右の矢印形にします（全紙面がスクリーンに入っていてスクロールが必要ない場合は、右ボタンのクリックはいりません）。

cover sheet の境界がスクリーン上にあるときは、カーソルはその境界の位置に移動します。マウスの左ボタンを押し下げたままでカーソルを動かすことにより、cover sheet が動きます。マウスの左ボタンをはなすと、カーソルは元の位置に戻ります。

2. \special{pause} をTeXのソースに書いておくと、[Space] キーを押すことにより、cover sheet がそれを書いてある場所まで移動します。

[Space]を押すと、そのページの次の\special{pause}の位置まで、cover sheet が移動します。そのページにそれ以降の\special{pause}が無くて、cover sheet で覆われていた部分があるときは cover sheet を動かして全紙面を表示します。
それ以降の\special{pause}が無くて、全紙面が表示されていた場合は、次のページに移動します。そこに\special{pause}があればその位置にcover sheetを移動します。
それが、無ければそのページ全体をcover sheetで覆いますが、On for Pause かあるいは、\special{pause 0}があれば cover sheet を全紙面が表示される位置に置いた状態の表示となります。

pause special の使用例を参照してください。

3. プレゼンテーション・モードでは、以下のファンクションキーに特別な機能が割り当てられています（他のキーにも自由に割り当て可能）。

F5 On : カバーシートを使う
F6 Off :　カバーシートを使わない
F7 Suspend : カバーシートを一時的に不使用
F8 Return : 元のカバーシートがあった場所に戻る
F9 On for Pause : F5と同じだが、\special{pause}の無いページはカバーシートを全紙面が表示される位置に置いた状態で表示。

上記 Suspend を行うと、カバーシートを用いていた場合はそのファイルの当該ページが「もとのカバーシートがあった場所」として登録更新される。

一時的にカバーシート不使用の状態で（他のファイルやページに移った後など）、「もとのカバーシートがあった場所」に戻ってくれば、自動的にカバーシートを使うモードになる。

上記の Return で、「もとのカバーシートがあった場所」に戻ってカバーシートを使うモードになる。

上記の OFF の実行や HyperTeX などによるジャンプは、上記の Supspend を行ってからなされる。

注意: IntelliMouse を使っている場合は、ホイールを押しながら回転することによりページ移動がなされますが（cf.Q_V12）、マウスの左ボタンも押していると、Suspend 状態に入らない移動となります（後方移動では、[Space]を押したのと同じ）。

注意: \special{pause}が全く使われていないdviファイルを cover sheet 機能を有効にしてプレゼンテーション・モードで表示し、[Space]キーを押していくと、
cover sheet で覆われたページの表示 -> cover sheet を全紙面が表示される位置に置いて表示 -> 次のページを cover sheet で覆って表示 -> ...
となっていきます。ただし、On for Pause のモードでは、「cover sheet で覆って表示」がスキップされます。


pause special
[Space]キーで紙面を覆う cover sheet が順にはずされていきますが、その位置は \special{pause} のある場所で決まります（DVIファイルでの出現順）。\special{pause 0} があれば、そのページから cover sheet がはずされます。

\special{pause} は、TeXの中で以下のようにして使うと便利です。

% Keep the page size
\special{dviout `keep y}
% Screen 800 x 600: draw off, white screen
% bottom cover sheet On for Pause
% Presentation mode; wait
% draw on, Fit screen
\special{dviout -y=SVGAP !AN0N5NP!p;!bdf}
...
\special{pause}% the place to pause
...
\special{pause}% the place to pause
...

上記では、dviファイルを最初のページから表示すると、プレゼンテーション・モードに移行し、[Space]キーを押していくと、\special{pause}の位置まで順に表示されていきます。TeX での用紙サイズは、8 inch x 6 inch などが適当でしょう。


プレゼンテーションでのキー
プレゼンテーション・モードでは、次のキー操作が定義されています。

ESC: プレゼンテーション・モードのON/OFF。
5: Fit,  6: Full,  9: 16 pages (-> マウスの右ボタンで該当ページへ)
CTRL+SHIFT+矢印キー: 表示紙面の位置補正。0.5pt = 0.176mm 単位。
ALT+X: dviout の終了。
SHIFT+F1: キー機能表
SHIFT+F12: ページ移動、および、線画、表示制御、カバーシート機能設定。[+]で形状変更、[-]で右下端へ移動してカーソルがその場所に来たときのみ現れるメニューとなる。

線画機能
F12: 線画機能のON/OFF（トグルスイッチ）
SHIFT+マウスの左ボタン: 始点の定義
SHIFT+マウスの右ボタン: 終点、端点の定義
CTRL+SHIFT+マウスの左ボタン: 最後の始点の変更
CTRL+SHIFT+マウスの右ボタン: 最後の終点、端点の変更
Delete:    最後の点、または線の削除
F11:       線の描画（デフォルト）
SHIFT+F11: 矩形の描画
SHIFT+F5:  赤（デフォルト）, なお、色は始点で定義される。
SHIFT+F6:  黒
SHIFT+F7:  青
SHIFT+F8:  緑
SHIFT+F9:  線の太さの変更

表示制御
CTRL+U:  表示制御有効（dviout specials `+<levels>）
CTRL+V:  表示制御無効
CTRL+N:  再表示

cover sheet
F5 On : カバーシートを使う
F6 Off :　カバーシートを使わない
F7 Suspend : カバーシートを一時的に不使用
F8 Return : 元のカバーシートがあった場所に戻る
F9 On for Pause : F5と同じだが、\special{pause}の無いページはカバーシートを全紙面が表示される位置に置いた状態で表示。
マウスの左ボタンを押し下げ（+右ボタンのクリック）てマウスを動かす：カバーシートの移動。

Presentation->Use Mouse Button->Left, Rightをチェックすると、マウスの左、右のボタンが[Space]の機能に変わります（そのほかのマウスボタンの機能については、Q_V12を参照）。


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.dvi に myfig.ps が埋め込まれます。この foo.dvi は myfig.ps 無しに dviout で直接扱えます。

表示中のDVIファイルに埋め込まれたファイルがあれば、その情報は Help->Information, Buffer Info. で示されます。

他のOSでもソースファイルdviadd.cをコンパイルすればdviaddコマンドが使えるので、dviwareの実行前に埋め込まれたファイルをdviaddで取り出すように設定しておくと、dvioutと同様に拡張DVIファイルを扱えます。

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


拡張DVIファイル

1. 日本語を扱うことのできるアスキーの pTeX では、横書のほか縦書もサポートしています。縦書きの含まれるDVIファイルは、

DVIファイルの最後の部分は 243 という値の複数の byte からなっていますが、その前の 1 byte は通常の 2 でなくて、3 という値になっています。この場合ページ記述部分では、255 のコードがあるとその次のコードが縦書きか横書きかのスイッチとなります。

2. dviout は任意のファイルを DVI ファイルに埋め込んだ独自の拡張DVIファイルをサポートします。埋め込みファイルは、ページ記述部分とポストアンブルとの間に以下のように入れられています。

PRE(247)
...           % プリアンブル
BOP(139)
...           % 最初のページ
EOP(140)
...
BOP(139)
...           % 最後のページ
EOP(140)
 POST(248)
 data         % num_add 個のファイル内容のデータ
 file_name[]  % num_add 個のファイル名(array of NULL terminated strings)
 pt_data[num_add][bod[4], lod[4]]
              % ファイル内容の先頭部分のアドレスとその長さの組を
              % num_add 個並べたもの
 bof[4]       % file_name[] の先頭アドレス
 eof[4]       % file_name[] の終了アドレス + 1
 num_add[4]   % 埋め込まれたファイルの数
 top_add[4]   % 埋め込まれた部分の先頭の POST のアドレス
 AdID[3]      % 'A', 'd', 'O'   : ID
 EOP(140)
POST(248)
...           % ポストアンブル
POST_POST(249)
top_post[4]   % ポストアンブルの先頭の POST のアドレス
2 or 3, 223,...,223


tar形式
tar形式にパックされたDVIファイルをdvioutは直接読むことができます。拡張子は、通常は.tar となっています。このとき、そのDVIファイルが読み込む画像ファイルや、HyperTeXのターゲットファイルもそこにパックしてあれば、それもdvioutから認識されます。

tar形式のファイル中に書かれたディレクトリ構造は無視されます。

拡張子が .dvitar となっているとき、例えば foo.dvitarであると、その中の foo.dvi というファイルを探して表示します。それ以外では、拡張子 .dvi のファイルがDVIファイルと見なされます。


dviout specials

dviout は

\special{dviout <macro>}

によって、dviout のパラメータの変更やキー操作をdviファイルに埋め込んで利用することができます。通常の preview を行っているときのみ有効です（印刷や、4/16ページ同時表示などでは無視される）。

この機能は、HyperTeX specials でも用いることができます。

1. 上記の<macro>は、-macro: におけると同様、DDEによる他のプログラムとの連携における[ValueSet(parameter=value)] あるいは[Function(key)]の引数の形で定義します。ただし前者は各parameterの前に - をつけます。複数項を指定するときは空白で区切ります。
たとえば、

\special{dviout -y=A6L fn}

なお、マクロの実行や定義に変化を及ぼしたり、ページ表示後に行うキー操作(key)は、小文字に直して書きます。たとえば、次のページへの移動で、次のページに再び dviout special がある場合など(cf.Q_O30)。

用紙サイズを指定するには、dvips で
\special{papersize=<width>,<height>}
が可能ですが、これは dviout が自動的に
\special{dviout -y=F<width>:<height>P}
に変更して解釈します。ただし一度解釈されるとそのDVIファイルを閉じるまで、再解釈はされません。たとえば、
\special{papersize=21cm,19.7cm}
と指定しますが、-y=<parameter>の<parameter>を用いた
\special{papersize=A4L}
のような様式も可能です。また最初のページで
\AtBeginDvi{\special{papersize=210mm,197mm}}
のように指定しておけば、dviout の表示が最初のページからでなくてもこの指定が最初に解釈されます。
\AtBeginDvi{\special{papersize=\the\paperheight,\the\paperwidth}}
のような指定も可能です。

2. そのほか\special{dviout `key parameter}の形でいくつかの機能をサポートしています。keyには現在 timer, href, keep, restore, message, ask, input, in, in*, +, sp, initialize が可能です。

2.1. \special{dviout `timer number}
次に続く dviout specials の実行までに number/1000 秒の時間を空ける。ほかのページやdviファイルに移動した場合、未実行の dviout specials があってもそれはキャンセルされる。
次に続く dviout specials を number の後に空白を空けて書くことも許されます。
たとえば、最後を除く各ページに

\special{dviout `timer 60000}
\special{dviout Je}

と書き、最後のページに

\special{dviout `timer 60000}
\special{dviout Jt}

と書くと、各ページを順に60秒間表示し、最後のページの後は先頭のページに戻ります。なお

\special{dviout `timer 60000 Jt}

などと書いてもかまいません。

2.2. \special{dviout `wait}
これは \special{dviout `timer 0} と同じで、これ以前の dviout specials の実行が完了まで、これ以降の dviout specials の実行を待つ。また

\special{dviout <macro>}
\special{dviout `wait}
\special{dviout ....}

は、ひとつにまとめて

\special{dviout <macro> ; ....}

と書くことができる。

2.3. `"....."`
`timerを除く dviout specials は、`" と "` で囲んでブロック化することにより、いくつかの dviout specials を一つの \special にすることができます。間には自動的に `wait が挿入されます。
たとえば、myhyper.sty のもとで

\href{dviout:`"`href file:foo.mid"` `href file:foo.dvi}{jump to foo}

2.4. \special{dviout `href parameters}
paramaters は、HyperTeX specials における \special{html:<a href="parameters">} のparametersと同じ。ただし、parametersの先頭がdviout: であるものは無視される。

\special{html:<a href="dviout: -y=A4L ;`href file:foo.dvi">}
Jump to foo
\special{html:</a>}

などと、HyperTeXの中に入れることもできる。

2.5. \special{dviout `keep parameterlist}
paramater list にあるパラメータの現在の値を記録し、現在のDVIファイルから抜け出すとき、あるいは\special{dviout `restore}によって自動的に復元する。
現在のDVIファイル中でこの dviout special に複数回出会っても、値が記録されるのは初回のみである。また、復元により記録は消去される。たとえば

\special{dviout `keep y BMP}

2.6. \special{dviout `message <MESSAGE>}
<MESSAGE>が情報Windowに表示される。
<MESSAGE>は、`' と '` で囲むことによりブロック化できます。ブロック化した場合は、区切り `' により複数行に分割できます。複数行に分かれた場合は、最初の行がタイトル、それ以降がメッセージの本体と見なされます。たとえば

\special{dviout `message `'Remark`'Written by foo`'Jan. 2000'`}

2.7. \special{dviout `ask `'<MESSAGE>'` `yes ... `no ...}
<MESSAGE> を含む Yes か No かで答えるダイアログが表示され、その答えによって実行される dviout specials が選択される。
Yes と答えると、`yes が存在すればそれ以下のdviout specials が、`no の前まで、`no がそこに無ければ末尾まで実行される。No と答えた場合は逆になる。たとえば myhyper.sty を使うと

\href{dviout:`ask `'direction`'Landscape'` `yes -y=A4L fn `no -y=A4P fn}{Change direction}

2.8. \special{dviout `input <string>}
Clipboardの中身が <string> に置き換わる（ALTキーを押していると、Clipboardへの追加）。
`input の代わりに `in  を用いると、<string>の中で一つの空白の後に16進の2桁の数が続いているものはその数のコードに置き換えられて入力される。ただし、空白が2つ続くものは1つの空白に置き換えられる。よって偶数個の連続した空白は、その半分の数の空白となる。
<string>の先頭が . で、それに16進の2桁の数が続いているものも、その数のコードに置き換えられる。先頭が .. となっていれば、それは . に置き換えられる。
`in の代わりに `in* を用いると、文字列が画面表示されることなくClipboardにコピーされる。
この dviout special は、HyperTeX の指定の中で用いると便利（ホットスポットのクリックで Clipboard に文字列がコピーされる）で、CTRL キーを押していた場合、エディタへの直接コピーができる（CTRL+ALT を押していた場合はエディタの再定義）。

2.9. \special{dviout `+<levels>}
そのページの以降の出力を制御する。<levels>がない場合は、出力を中止し、<levels> が - のとき再開される。
<levels>は -2, 4-5, 7- などのように書き（複数並べてもよい），その範囲のレベルにあるときに出力する。レベルは0から[SPACE]キーを押すと順に増える。

なお-2 は 0-2 と、7- は、7 以上と解釈される。さらに M はそれまでそのページで定義された最大のレベル、n個のMを並べるとそれまでそのページで定義された最大のレベル＋n を表す。一方 m はそれまでそのページで定義された最大のレベル－1 を、n個のmを並べるとそれまでそのページで定義された最大のレベル－n＋1 を表す（それが 0 以下の時は0）。

前のページに戻ったときは level が十分大きいとして処理されるが、再度 level を 0 としてそのページから再開するには reNew ボタンを押す（デフォルトでは CTRL+N）。

2.10. \special{dviout `sp <special>}
TeXのspecialを実行する dviout special。`initializeなどと組み合わせて使う。

2.11. \special{dviout `initialize <macro>}
dviファイルの先頭にこの dviout special を置くと、このdviファイルを読み込むときに（たとえ、２ページ目からの表示でも）常に最初に実行される。
オプションとして、<macro>の前に page と書くと、各ページの最初で常に実行することを意味する。<macro>を指定したこの dviout special は、dviファイルの先頭以外の場所にあっても無視される。
先頭に定義したものを、途中で再度実行するには、

\special{dviout `initialize}

とのみ指定する。なお、dviファイルの先頭にこの dviout special を定義するには、たとえばTeXファイルの最初のページの冒頭に以下のように書く。

\AtBeginDvi{\special{dviout `initialize -y=B5L}}
\AtBeginDvi{\special{dviout `initialize page `sp background Yellow}}

さらに、複数のパスの設定ができる -TEXPK: -TEXFONTS: -TEXKNJ: -gdat: については、- を + と書くことによってパスの追加ができる。パスの先頭に ; を書くと末尾に、末尾に書くと先頭に追加される（いずれかを指定）。
重複追加がないようにチェックがされる。この + による機能は、一つの\specialにつきパラメータ名は一つのみである。たとえば

\AtBeginDvi{\special{dviout `initialize `keep TEXPK}}
\AtBeginDvi{\special{dviout `initialize +TEXPK=^F/^s.pk;^F/^s.tfm;}}

この初期化の dviout specials は、initial.par というファイルに中身を書いてDVIファイルへの埋め込みができる。


source specials

MikTeXとyapや最新のアスキーpTeXで対応されている source special を解釈し、dviout の画面からエディターを呼び出して該当するソースファイルの該当個所にジャンプすること、および逆にTeXのソースファイルからDVIファイルへジャンプすることができます。

source special は、

\special{src:line_number source_file_name}

という形でDVIファイルに埋め込まれます。

1. dviout からエディターを呼び出してのジャンプ
dviout からエディターを呼び出す方法は、Setup Parameters -> [Common] の -src: で指定します。たとえば

c:\Program Files\Hidemaru\Hidemaru.exe^s/j%d "%s"

とします。%s はTeXファイル名（フルパス名）、%d は行番号に置き換えられます。%s の代わりに %n と書くと、TeXファイル名から拡張子を削ったものになります。^s は起動プログラム名とパラメータとの区切り記号です。

以下のように先頭に < を入れると、エディターの起動後、dvioutはアイコン化します。

<c:\Program Files\Hidemaru\Hidemaru.exe^s/j%d "%s"

emacs/mule/meadow の場合は、gnuserv パッケージを用いることにより、以下のように指定できます。

gnuclientw^s+%d %s

なおgnuservパッケージを用いるには、パッケージ中の実行ファイルをパスの通ったディレクトリに入れ、gnuserv.el をlispディレクトリに置いて M-x byte-compile-file などとしてバイトコンパイルし、$Home/.emacs に

(require 'gnuserv)
(gnuserv-start)

の２行を追加しておく必要があります。

DDEコマンドを使う場合は、DDEサーバのサービス名、トピック名、XTYP_EXECUTEトランザクションで渡す文字列を１文字の空白で区切って順に並べ、その全体を ` で挟んだものを指定します。その後に空白を空けずに続けて、DDEサーバが起動されていないときの処理を指定します。たとえば

`myedit myedit [dviout(+%d %s)]`c:\Program Files\myedit.exe^s+%d %s

なお、二番目の ` を２つ重ねた場合は、DDEサーバが起動されていないときの処理を行ったあと、再度 DDEコマンドを実行します。複数の XTYP_EXECUTEトランザクションを指定するときは、| で区切ります。たとえば

`myedit myedit Open(%s)|Line(%d)``myedit

DDE用の設定がされていないときは、-src: の先頭に

`srctex srctex %s: %d`

をつけて処理されます。

-src: の設定が空で環境変数 TEXEDIT が設定してあれば、それを用います。

1.1. マウスの左ボタンのダブルクリックにより（ただし矢印の形のマウスカーソルで、source specials が有効になっていないと、失敗することがあります）-src: に従って、ソースファイルの該当個所へジャンプします。
同様に、SHIFTキーを押しながらのマウスの左ボタンクリックで文字列コピーを実行したとき、source special が設定されていれば、[Execute]ボタンが[->Src]ボタンに変更され、そのボタンでソースファイルの該当個所へのジャンプが出来ます。なお、Jump -> DireCt Jump to Editor がチェックされていれば、直接ジャンプします。
-src: が空でなくて、%d または %s, %n が含まれないときは、タグジャンプ形式のテキストが表示されます。

1.2. CTRLキーとマウスの左ボタンを押した状態で、マウスの右ボタンをクリックすると、source specialが設定されていれば、上記と同様ソースファイルへのジャンプができます。
こちらの場合は、縦方向（縦書きモードでは横方向）の位置のみしか見ていないので、多段組などではジャンプ位置が不正確になることがあります。

2. source special を使ってのジャンプ
HyperTeX を使ってのジャンプと同様、#line_number tex_file_name または #line_number/string tex_file_name を指定してdvioutで該当個所を表示できます。コマンドラインからは例えば、

dviout -1 foo.dvi "# 235 foo.tex"

のように指定します。なお、-1 は最初の dviout を意味します（cf. 起動と終了、no more dviout)。このときは DVIファイル名には拡張子 .dvi が必要。さらに

dviout -1 foo.dvi "# 235/This foo.tex"

とすると foo.tex の 235行目の "This" という単語への移動を意味します（単語単位かどうかは、dviout で行ってdvioutを終了した最後のサーチがどちらであったかで決まります）。"This book" のときは

dviout -1 foo.dvi "# 235/This book foo.tex"

とします（"# ... " の最後の部分がTeXのソースファイル名）。

dviout -1 foo.dvi "# 235/東京 foo.tex"

などのように和文の文字列も指定できます。

DDE（他のプログラムとの連携）を使う場合も同様で

[PageOpen(# 235 foo.tex)]

などのようにします。ファイル名の部分を * とすると、ファイル名のチェックは行わず、ソースファイルの行番号（+ 文字列）のみで判断されます。また、ファイル名が空白を含むときは ' で囲って 'My Documents\foo.tex' のように指定します。

エディターで編集中のTeXのソースファイルに対し、拡張子 .tex を .dvi に変えたDVIファイルが、同じディレクトリにあるとします。このときソースのカーソル位置に対応するDVIファイルの場所をdvioutで表示するには、たとえば秀丸のマクロでは

ddeinitiate "dviout", "dviout";
ddeexecute "[PageOpen(# "+str(lineno)+" *)]";
ddeexecute "[FileOpen("+leftstr(filename,strlen(filename)-3)+"dvi)]";

とします。なお上記の"[PageOpen(# "や" *)]" には半角空白が入っているので注意（DDE使用例参照）。

dvioutでの文字列サーチによる直接の指定（たとえば、_235_foo.tex あるいは _235_* で、_ は半角空白）もできます。

3. source specials を埋め込んだ DVI ファイルの作成
TeX コンパイラを -help というパラメータで起動したときに表示される Option: に
-src-specials  Insert source specials into the DVI file.
という項があれば、source specials がサポートされており、-src というオプションを付加して TeX コンパイラを使うと、対応した DVI ファイルが作成されます。すなわち、たとえば以下のようにします。

platex -src foo

source specials に対応した TeX コンパイラを用いなくても、付属の srctex により source specials を埋め込んだ DVI ファイルを作成することができます。たとえば、foo.tex から

platex foo

によって、DVI ファイルを作成する代わりに

srctex platex foo

あるいは

srctex -a platex foo

とします。中間ファイルとして foo.tmp が作成され platex に渡されます。後者の方がより詳しい情報が埋め込まれ、より正確なジャンプが出来ますが DVIファイルの作成に失敗する可能性がより高くなり、作成されたファイルが大きくなります。
コンパイルエラーでエディターが呼ばれた場合、foo.tmp でなくて foo.tex を編集するには、付属の convedit を経由し、そのパラメータにエディターを開く通常の方法を指定します。たとえば

TEXEDIT=convedit mule +%d "%s"

foo.tex を source specials の埋め込まれた TeX ファイル fo1.tex に変換するには、

srctex -ofo1.tex foo

とします。またこれと同時に platex fo2 を実行するには

srctex -ifoo.tex -ofo1.tex platex fo2

とします。 より詳しくは、srctex をパラメータ無しで実行して表示される情報や付属の srctex.cfg などを参照してください。


Font/Image Embedding

File -> Font/Image Embedding により、表示中のDVIファイルで使用するフォントデータを文字単位で埋め込むことができます（初期化ファイル initial.par の設定も同時にできます）。

注意：埋め込めるフォントは以下の通りですが、埋め込んだDVIファイルの配布にあたってはフォントメーカから埋め込んでの配布が許可されているフォントのみに限ってください。埋め込むかどうかは、フォント毎に指定できます。

付属のプログラムdviadd.exe が、起動中の dviout と同じディレクトリに存在する必要があります。

表示中のDVIファイルで使用する画像データファイルも埋め込むことができます。

dviout.etf という名前で埋め込まれ、それは dviadd によって、あるいは以下のボタンで除去することができます。

[Strip Font]: 埋め込まれたフォントを削除
[Strip All] : 埋め込まれた全てのファイルを削除

DVIファイルに埋め込まれたフォントの情報は、Help -> Embedding Fonts かより詳しくは、付属のプログラム etfdump によって得られます。

File -> Font/Image Embedding で埋め込めるのは:

1. 画像データファイル
使われるファイルがそのまま埋め込まれます。

2. 欧文のWindows TrueTypeフォント（フォント情報(Font Info)で TT と表示されるフォント）および、対応するtfmファイルからの情報
-TEXPK: でTrueTypeフォントファイルを指定し（例えば、^w\fonts\^s.ttf）、-TEXFONTS: でそのtfmファイルの存在するディレクトリを指定します（たとえば、^r\tfm\\）。
使われる tfm と TrueType のデータが文字単位で重複せずに埋めこまれる。
通常、0x00 - 0x20, 0x7f のTeXの文字コードは、BaKoMaで用いられている規則で変換され、それ以外は無変換。その他 -ftt: で指定されるフォントマップファイルに記述があれば、それに従う。

3. 和文のWindows TrueTypeフォント（コンフィギュレーションファイル経由で(-vfn:）、dvioutの展開ルーチンを使って表示しているもの）、およびjfmファイルからの情報。
 [JFont2] の -vfn: で与えたフォント定義ファイルにおいて、dvioutで展開するように指定した和文フォント（拡張子が .ttf または .ttc の和文TrueTypeフォントに対し、ttindex.exe を使って、拡張子が .ttc のインデックスファイルをあらかじめ作成しておく）。文字単位でTrueTypeとjfmのデータが埋めこまれる。

4. Virtualフォント（VF/OVF）
使用される文字の必要なデータのみが埋め込まれます。

5. フォントマップ/tfm/jfm（Windows APIを使って表示しているTrueTypeフォントに関連するデータ）
tfmデータは文字単位、jfmデータは（使われる部分が同じファイルの重複を避けて）ファイル単位で埋め込まれます。フォントマップとは、-ftt: の指定で読み込まれたデータです。内蔵jfm（-Jfm:）や[WinJFont]での設定情報は埋め込まれません。

6. PKフォント
基礎の解像度を複数個指定でき（数字を並べて 300 400 600 というように、空白で区切って指定）、表示の時にはそれに近い解像度のものを用います。解像度が一致しなれば、それに応じたスケール変換がなされます。

7. initial.par（cf. DVIファイルへの埋め込み）
initial.par のチェックを付けておくと、その下のWindowに初期化パラメータが書かれていれば initial.par として埋め込まれ、空白になっていれば initial.par（が埋め込まれていると、それ）を削除します。チェックが付いていなければ、現状を変えません。

例 1. TrueType欧文フォント（付属の test_a4x.dvi）
BaKoMaフォントを ^w\fonts\^s.ttf に置き、-TEXPK: の先頭に ^w\fonts\^s.ttf を、-TEXFONTS: を ^r\tfm\\ と指定して埋め込んだ。

付属の winttf.zip に含まれる ^r\doc\ttnfss.dvi にフォントを全て埋め込むには、上の指定のほか ^x\map\ttfexp.map を -ftt: で指定し、Virtual Font, Font map/tfm/jfm, TrueType Fontのチェックで埋め込みを行う。
但し、Times New RomanなどのTrueTypeフォントの埋め込みを行わない場合は、-TEXPK: などの変更は行わないで、-ftt: もデフォルトの ^x\map\ttfonts.map のままとし、Virtual Font, Font map/tfm/jfm のチェックで埋め込む。

2. TrueType和文および欧文フォント（付属の text_b5x.dvi）
GTフォントファイル gt20001.ttf を ^w\fonts に置き、ttindex.exe を使って gt20001.tti を作成しておき、^x\utility\dviout1.vfn の 1, ^w\fonts\msmincho をコメントアウトし、#1, ^w\fonts\gt20001 の行は先頭の # を削って有効にし、-vfn: で ^x\utility\dviout1.vfn を指定し、さらに例 1と同様な操作を行って埋め込んだ。
また initial.par をチェックして、紙面サイズの調整も指定した。


移動

表示箇所の移動には、以下のようなものがあります。

・ページ内移動
 1. スクロールバー

 2. 手の形のマウスカーソルでの左ボタンによるドラッグ

 3. 矢印キー

 4. [Home], [End]などのキー

 5. Microsoft IntelliMouse のホイールをまわす。

・ページジャンプ
 1. Jump-> からの各種ページ移動があり、幾つかのキーに割り振られています。よく使うものは、Property Sheets->[Key] で再定義しておくとよいでしょう。ツールバーのボタンに定義することもできます。

 2. ツールバーのページ移動（前後、先頭、末尾）ボタンを使う。

 3. ページヒストリー（Jump -> History または、ツールボタン）からの移動。

 4. あるページにマークを付け、あとからそこへ移動する。

 5. Page Sliderの（上または下を）クリック、または、そのスライダーをドラッグ & ドロップ

 6. ツールバーのスピンコントロールを使うか、それについたエディットボックス（Jump->Input Page Number）で、ページ番号を入力する、あるいはそこで矢印キーを使う。

 7. Microsoft IntelliMouse のホイールボタンを押しながら、ホイールをまわす。

 8. 4ページまたは16ページ同時縮小表示において、PageUP, PageDown などによる移動の他、マウスの右ボタンクリックで、そのページを通常表示。

 9. 外部のプログラムからDDE通信によって、ページ移動を指示する。

・他のファイルへ

・そのほか
  文字列サーチやHyperTeX, source specialsによる移動

注意： 各種の機能のキーへの割り当てについては、キー機能一覧を参照するとよいでしょう。


他のファイル
dviファイルの選択方法には、以下のものがあります

1. dviout の中から、File, File->Open または File->History (cf. フォルダの履歴）、あるいは、対応するツールボタンを選んで指定。

2. 起動時のコマンドラインで指定

3. dviファイルまたはそれが含まれるtar形式のファイルをドラッグして、dviout のアイコン、あるいは、起動している dviout にドロップする。

4. 拡張子 .dvi をもつdviファイルのdvioutへの関連付けを設定する。こうしておくと、dviファイルのアイコンをマウスの左ボタンでダブルクリックすると、dvioutが起動する(cf. no more dviout)。

5. DDEを使う（cf.他のプログラムとの連携）

6. 表示中のdviファイルが更新されたときに、自動更新する機能を指定する（cf. -renew:）

7. HyperTeXを使ったジャンプ（インターネット上のdviファイルへの移動も可能）


ページ番号
ツールバーのページ入力ボックスでの指定は。

 <number>: <number>ページに移動

+<number>: 後方に<number>ページ相対移動

-<number>: 前方に<number>ページ相対移動

.<number>: 最後のページから（文頭に向かって）数えて<number>ページ目に移動。<number>を指定しない場合は、最終ページに移動

終了時に SHIFT または CTRL を押しながら ENTER を入力
         : nombre のページの指定
          上の .<number>のときは、nombre が最大のページから文頭に向かって数えたページになる。

注意： デフォルトでは、/ がページ番号入力に割り当てられているので、/20[Enter]、/.[SHIFT]+[Enter]などのキー入力でページジャンプできます。


起動と終了

dviout の起動方法には以下のものがあります。

1. dviout のアイコンをクリックする。

2. 拡張子 .dvi を持つdviファイルのdvioutへの関連付けを設定する。
設定後は、dvi ファイルのアイコンをダブルクリックすれば、dviout が起動して、クリックしたファイルが表示される(cf. no more dviout)。

3. コマンドラインからの起動

    dviout [parameters] [foo [option]]

parameters : -mag=2 -BMP=3 のようにスペースで区切って指定する。-Set=!m はウインドを最大化で起動することを意味する。-NULL というパラメータは、Registryからのパラメータの読み込みを行わない、という特別の指定を意味する。

ただし、パラメータの最初を
    -NULL=(<x0>,<y0>)-(<x1>,<y1>))
とすると、dviout のWindowsサイズの指定（左上と右下のピクセル単位での座標）と解釈される。View Menuで各種バーを消して、-NULL=(0,-40)-(1024,768)などと指定することにより、画面全体がプレビュー画面になる。

一方、パラメータの最初を
    -1
とすると、最初の dviout の起動、あるいは既にそれが起動されていれば、最初の dviout へのパラメータの送付を意味する（最初の dviout で no more dviout を指定したとの同様な結果となる）。
一般に、たとえば2番目の dviout へのパラメータの送付は、パラメータの最初を -2 とする。

foo : dviファイルの指定で、拡張子の .dvi は省略可能。なお、foo がディレクトリ名のときは、そのディレクトリ中のdviファイルを選択するダイアログが開く。

option : 数字 のときは、最初に表示するページを表す。
        h とすると、以前に foo.dvi を表示した記録が残っていれば、それを抜け出たときのページを表示する。
        #name とすると、HyperTeX のとび先のラベル名が name の箇所を含むページを表示する。
        "# line_number source_file" とすると source specials によって該当部分が表示される（# の後に空白が入る）。例えば、

  c:.exe foo.dvi "# 234 foo.tex"

実行ファイル名: dviout.exe のファイル名を dvioutj.exe/dvioute.exe と変更すると、（自動判断ではなくて）Windows system の言語がそれぞれ日本語/英語であると見なす実行ファイルとなる。

注意: dviout は、複数個起動できます。その最大個数は、-multi: で変更できます。それ以上の dviout を起動して新たなdviファイルをプレビューしようとすると、デフォルトでは、最後に起動した dviout が、そのdviファイルを表示します（cf. no more dviout）。

dviout の終了時には、以下の状態が保存され、次回の起動時に引き継がれます。

・Tool Bar, Scroll Bar, Status Bar, Page Slider の表示／非表示 および、Tool Bar のボタン
・（CTRLボタンなしの）Loupeのサイズ、拡大率、形、移動速度
・マウスカーソルの形

ただし、File -> Quit で終了した場合や、複数個のdvioutを同時起動した場合の最初のdviout以外の状態の保存はされません。


no more dviout
Option->No more dviout をチェックし、外部のプログラム、または、コマンドラインから

dviout foo

を実行すると、チェックした dviout（デフォルトでは、新たな dviout または -multi: で設定された限度の個数まで起動したときは最後の dviout）が、（表示中の dviファイルを閉じて） foo.dvi を表示します。

dviファイルの関連づけで、dviファイルのアイコンをダブルクリックした場合も同様です。

この設定は、より新しいものが有効ですが、すべての dviout を終了させると、設定はキャンセルされ、デフォルトに戻ります。


他のプログラムとの連携

他のプログラムからの dviout の呼び出し
既にdvioutが起動している状態で、dviファイルをパラメータとして更にdvioutを呼び出したとき、もう一つdvioutを起動するかどうか制御できます(cf. no more dviout)。

TeXのエディターとの連携
source specialsを使うことにより、dvioutのプレビュー画面との相互のジャンプができます（実行コマンド、あるいはDDEのサーバ／クライアントとしてのトランザクションによる）。

DDE における以下のサービスのサポート

    サービス名
        dvioutで始まる文字列（dviout とか dvioutj など）または WinDVI
    トピック名
        dviout または dvioutn または WinDVI または 表示中のdviファイルのフルパス名

これでdvioutをDDEサーバとして接続ができます（複数個の dviout が起動されているときは、最初の dviout がデフォルトですが、トピック名を dvioutn とすればn番目の dviout が呼び出されます）。
接続後、以下のXTYP_EXECUTEトランザクション、および、XTYP_REQUESTトランザクションを指示することができます。

--- XTYP_EXECUTEトランザクション ---
[WinNormal]  dvioutのウィンドウをアクティブにします。

[WinIconic] dvioutのウインドウをアイコン化します。

[FileOpen(filename)]  filenameを開きます。たとえば [FileOpen(c:\document\foo.dvi)] または [FileOpen("c:\document\foo.dvi")] のような文字列を送信してください。filenameがフルパスでない場合、動作は保証できません。
filenameがディレクトリ名のときは、そのディレクトリ中のdviファイルを選択するダイアログが開かれます。

[FileReopen]  dvioutに現在開いているファイルを再度開いて表示し直すように指示します。

[FileExit]  dvioutに現在のDDE接続が終了したときに、自動的に終了するように指示します。

[PageMove(page)] 指定したページに移動します。[PageMove(10)][FileReopen] のように使います。

[PageOpen(page)] 次に[FileOpen(filename)]で開くファイルの最初に表示するページを指定します。
コマンドラインと同様、ヒストリ(cf.File Menu)を使う場合は、pageは、数字でなくhとします。このときは、filenameはフルパスでなくても、ヒストリからサーチされます。また、最後のページはlと指定します。
HyperTeXの場合は#nameのように#で始めて、表示箇所を指定できます。source specials の場合は、# line_number source_file または # line_number/string source_file とします。

[ValueSet(parameter=value)] パラメータを設定します。たとえば、[ValueSet(dpi=600 y=B5)] のように、変更したいパラメータとその値の文字列を送信します。

[Function(key)] 定められた機能（140種類以上ある）を実行します。keyは、Help->Key tableのキー機能一覧の表示において[  ]で囲んで示されるキーシンボルの2文字、あるいはそれを並べたものです。並べて書けば、続いて実行されます。
たとえば、[Function(FN)]は、[FileReopen]と、[Function(FPFX)]は、[FilePrint][FileExit]と同じです。
より一般に、dviout specials の形式のコマンドが許されます。

[FilePrint]  dvioutに現在開いているファイルを印字するよう指示します。メニューでプリントを選んだときと動作は同じで、ダイアログが開きます。

[FilePrint(parameter:value ...)] 上記と同じですが、さらにプリントダイアログに表示されたパラメータの値の変更や[OK]ボタンを押して、印刷をすることができます。以下の parameter などの指定を、必要なもののみ空白で区切って並べます。たとえば

[FilePrint(From:5 To:10 OK:50)]

From:<n>      <n>は印刷開始ページ
To:<n>        <n>は印刷終了ページ
Copies:<n>    <n>はコピー部数
Reduce:<n>    <n>は拡大縮小で、1000が等倍
Odd:          偶数ページのみ
Even:         奇数ページのみ
U2page:       袋とじ
BlankTop:     袋とじで最初のページを空白に
RightToLeft:  袋とじで右側のページを先に
Ujob:<n>      Unite job(<n>=1 は ON、0 は OFF)
Collate:      Collate Copies
Reverse:      Reverse order
dviprt:<n>    dviprt機能(<n>=1 は ON、0 は OFF)
OK:<n>        <n>*100 mm 秒待ってから [OK] ボタンを押す。
              デフォルトは、1000 mm 秒 = 1 秒 で 最短 0.1 秒、最長2分

--- XTYP_REQUESTトランザクション ---
TEXPKやyのような任意のパラメータをアイテムとして渡すことにより、その値を得ることができます。結果は、Option->All Parametersの = 以下で示されるような文字列で返されます。

通常のパラメータの他に、以下のものが指定できます。

version dviout のバージョン番号、3.03.2のような文字列が得られる。
number 該当の dviout の番号。
dvifile 表示しているdviファイルのフルパス名。表示していない場合は、ヌルストリング。
DVIfile 上記と同じだが、ショートファイル名。
current_page 表示しているページ番号。10(6)のように、物理ページ（論理ページ）の形で得られる。
total_page dviファイルの最後のページ番号で、current_pageの場合と同様の形で得られる。
time_stamp dviファイルのタイムスタンプ。

--------------------------------------------
WinDvi, WinDviPROと上位互換と思われます。

なおこれらの機能はすべて独立にインプリメントされているので、今後の機能拡張に関してDDEを気にする必要はありません。

複数のXTYP_EXECUTEトランザクションコマンドを順に送信する代わりに、空白を置かず[.....][.....]のようにして、並べて一度に送信してもかまいません。コマンド列の長さは、最大1024byteです。

DDE使用例を参照してください。


DDE使用例
たとえば、秀丸のマクロ言語では以下のように記述します。
    -------------------------------------------
    ddeinitiate "dviout", "dviout";
    ddeexecute "[FileExit]";
    ddeexecute "[FileOpen(c:\\document\\foo.dvi)]";
    ddeexecute "[FilePrint]";
    message "Total Page:"+dderequest("total_page");
    ddeterminate;
    -------------------------------------------
これによって、c:\document\foo.dviファイルをオープンし、印刷ダイアログを表示します。印刷が終了すると、全ページ数を示すメッセージボックスが表示され、それを閉じるとDDE接続も終了し、dvioutが終了します。

    -------------------------------------------
    ddeinitiate "dviout", "dviout1";
    if(!result) {
      run "dviout ";
      ddeinitiate "dviout", "dviout";
    }else
      $basefile = dderequest("dvifile");
    if(strlen($basefile) < 1)
      $basefile = leftstr(filename,strlen(filename)-3)+"dvi";
    if(selecting)
      $SrcWord = "/" + gettext(seltopx,seltopy,selendx,selendy);
    else $SrcWord="";
    ddeexecute "[PageOpen(# "+str(lineno)+$SrcWord+" '"+filename+"')]";
    ddeexecute "[WinNormal]";
    ddeexecute "[FileOpen("+$basefile+")]";
    ddeterminate;
    -------------------------------------------
source specials による dviout へのジャンプのためのもので、文字列（単語）を選択していると、それを使ってより正確なジャンプとなります。

基本のファイル foo.tex が

    ......
    \input sub/foo1.tex
    ......

となっている場合、foo1.tex を秀丸で編集していて、作成された foo.dvi を dviout で表示している場合も正しい（相互）ジャンプができます。
編集中のファイルが foo.tex の場合、dviout が起動されていなくても正しいジャンプが可能です。


インストール

dviout for Windows の側で必要なファイルは、dviout.exe と dviout.hlp, dviout.cntのみです。これらは同じディレクトリ（パス名に空白文字を含むものはさけるのが望ましい）に入れる必要があります。

dviout for Windowsを用いて、TeX の dviファイルを表示したり、印刷するためにはフォントファイルが必要です。その解像度（dpi）がプリンタの解像度に合致していなければ、正しく印刷できません。

dviout は、フォントの解像度とフォントの所在を知る必要があります。これらは、dvioutの -dpi: -TEXROOT: -TEXPK: というパラメータで設定します（必要なら、さらに -F: -L: など）。

フォントファイルを用意し、これらのパラメータを正しく設定すれば（-TEXROOT: -TEXPK: -F: を自動設定する[Guess]ボタンがあります）、dviファイルをWindowsの画面で表示することができます。

なお、以上の設定、dviファイルのdvioutへの関連付け、および、スタートメニューへの登録などは、Option -> Install を選んで行うことができます。

表示サイズの調整、あるいは、コントラストの調節を行ってそれをデフォルトに設定するには、-BMP: というパラメータを用います。

Windowsの画面で表示できていれば、印刷も可能ですが、印刷位置が正しくない場合は、その調整を行う必要があります。それは、-LM: -TM: というパラメータで調整します。

従来の MS-DOS版の dviout.par のようにファイルにパラメータを書いて設定することが可能ですが（dviout.exe の存在するディレクトリにおける dviout.par というファイルで設定）、以下にあるように dviout の中から設定する方がより多様な設定が可能なので、それをお薦めします（たとえば、印刷するときに自動的にパラメータを変更するなど）。

さらに、dviファイルのdvioutへの関連付けをしておくと便利です。

最もよく使われている環境で必要なフォントファイルは、

1. cmr10.300pk などのファイル名の欧文PKフォントグリフファイル（印刷には、プリンタの解像度に合致したdpiのもので、300がdpiの値になっています。その1.2倍や1.2^2倍の cmr10.360pk, cmr10.432pk なども必要とされます。）
あるいは、欧文TrueTypeフォントがあれば、それを使うことが出来ます。

2. アスキーの日本語TeXを使う場合は、さらに和文フォントメトリックファイル（jfmファイル）が必要です（ただし、min10.tfm など標準のものは dviout に内蔵されているので不要です）。
なお、欧文PKフォントファイルが存在しない場合でも、フォントの自動生成機能によって必要なPKフォントを作成していくdvioutの機能を利用することも可能です（MakeTeXPK がサポートされている場合は、Q_F6を参照）。

1. 解像度の設定
2. フォントのパスの設定
3. 表示スケールの調整
4. 印字位置の調整
5. dviファイルのdvioutへの関連付け

注意：WindowsNTなどの共有マシンで、共通のデフォルト設定＋各個人別の設定、が可能です(Q_S6)。

注意：そのほか、画像データファイルからの画像取り込みの設定や、LBP内蔵の和文フォントを用いた印刷の設定など、Q&Aや目次などから探せば、必要な情報が得られるでしょう。


解像度の設定

0. デフォルトは 300dpi となっているので、それに等しい場合は、設定不要です。

1. Option -> Setup Parameters で Property Sheets を表示させ、[Resolution]のシートを選びます（そこの[Help]参照）。

2. resolution -dpi: の値を、フォントの解像度（dpi）に合わせます（キー入力、あるいは、矢印キーを押します）。

通常この値は、プリンタの解像度に合わせ、画面表示はより低解像度なので、縮小してgray scaleにします（縮小しないで表示する場合は 、118dpiを用いることが多いようです）。

3. [Save]を押し、Registryに記録し、次回のdvioutの起動時に参照されるようにします（cf. Q_S1）。

4. [Apply]を押し、設定値を現在の dviout に反映させます。

これで設定は完了です。

注意： プリンタのカタログには、実際に受け付けるデータの解像度でなくて、より大きな仮想的な値が書いてあることがあります。印刷のダイアログの Quality: で選択可能な値が、Windowsのプリンタドライバがサポートする解像度です。

注意： 普通は、-dpiv: の設定は不要です。


フォントのパスの設定

dvioutが使用するフォントの存在するパスは、-TEXPK: で設定します。また、-TEXROOT: を用いると -TEXPK: の記述が短くなります。-L: の設定が必要なこともあります。

1. Option -> Setup Parameters -> [Font] を選びます（[Help]参照）。

2. -TEXPK: の設定をします。複数のパスを指定する必要があって、共通部分が多いときは、それを -TEXROOT: に設定すると、-TEXPK: のその部分は、^r と書いておくことができます。

-TEXPK の設定例を参照するとよいでしょう。

参考：[Guess]のボタンを押すと、-TEXROOT: -TEXPK: -L: の（場合によっては、さらに -F: の）設定をフォントファイルをサーチして推測することにより、上の2を自動的に実行します。質問が表示された場合は、注意して正しくYesまたはNoで答えてください。
解像度が正しく設定され、基本的なフォントがインストールされていることが条件です。欧文PKフォントファイル、和文jxl4フォント、和文jfmファイル、GTHフォントライブラリのみに対応しています。

3. フォントのチェック: [Check] を使って、フォントのパスの設定が正しいかどうかチェックしてみましょう。

4. [Save]を押し、Registryに記録し、次回のdvioutの起動時に参照されるようにします（cf. Q_S1）。

5. [Apply]を押し、設定したパスを現在の dviout に反映させます。

これで設定は完了です。


-TEXPK の設定例

1. 環境変数 TEXMFMAIN または TEXMF を用い、kpathsearch を利用する標準の TeX システムの場合

-TEXROOT:^T\fonts
-TEXPK:^r\pk\\^s.^dpk;^r\tfm\\^s.tfm;^r\vf\\^s.vf

で多くの場合に適合する。なお、^T は環境変数 TEXMFMAIN または TEXMF に、^r は-TEXROOT:に、^s はフォント名に、^dは解像度に、\\ は任意のディレクトリ名の列に対応する。
この設定では、最初は起動に時間がかかるが、何度か使うとフォントの所在のキャッシュが利いて高速になる（cf.-Fkeep:）。
上の -TEXPK: は、PKフォント、TrueTypeフォント、Virtual fontsの順に指定してある。プリンタによってPKフォントを使い分けている場合は、最初の項を例えば
   ^r\pk\cx\\^s.^dpk;^r\pk\modeless\\^s.^dpk
などとすればよい。
欧文TrueTypeフォントが登録されていればそれを用いるが、それをPKフォントより優先する場合は、^r\tfm\\^s.tfm を -TEXPK: の先頭に持ってくる。また、Virtual fontsも使用可能（cf.-virtual:）。Omegaの場合は、^r\ovf\\^s.ovf などと指定。
和文フォントにもVirtual fonts を用いる場合は、^r\tfm\\^s.tfmの代わりに^r\tfm\\^s^tfmを指定して、たとえば以下のようにする。
-TEXPK:^r\tfm\\^s^tfm;^r\pk\\^s.^dpk;^r\vf\\^s.vf;^r\tfm\\^s.tfm;
e:\myfontsの下にも ^T\fontsの下と同様にフォントがあって、後者を優先して両方を使う場合は、以下のように設定すればよい。

-TEXROOT:^T\fonts;e:\myfonts

2. すべての欧文フォントが c:\tex\texmf\fonts\pk の下にあり、cmbx10 で300dpi のものが、
    c:\tex\texmf\fonts\pk\cmbx10.300pk
というような形式で存在する。
和文フォントの jfmファイルは、min8 の場合は
    c:\tex\texmf\fonts\public\ptex\tfm\min8.tfm
というように c:\tex\texmf\fonts\public\ptex\tfm の下にある場合

-TEXROOT:c:\tex\texmf\fonts
-TEXPK:^r\pk\^s.^dpk;^r\public\ptex\tfm\^s.tfm

このとき、360dpiのフォントlcircle10は、c:\tex\texmf\fonts\pk\lcircle10.360pk というファイルになる。

3. 欧文のPKフォントが、
    c:\tex\fonts\cm\dpi300\cmbx10.pk
    c:\tex\fonts\latex\dpi360\lcircle1.pk
（cmbx100 の 300dpi と、lcirclie10 の 360dpi）のようなファイルで、和文のjfmファイルは最初の例1と同じ場合

-TEXROOT:c:\tex\fonts
-TEXPK:^r\cm\dpi^d\^s.pk;^r\latex\dpi^d\^s.pk;c:\tex\texmf\fonts\public\ptex\tfm\^s.tfm
cut long name: last part (-L: 0)

注意： 上の -TEXPK: は

-TEXPK:^r\\dpi^d\^s.pk;c:\tex\texmf\fonts\public\ptex\tfm\^s.tfm

とすることもできる（\\ は、任意の長さのディレクトリ名の列で置き換えられる）。ただし、\\ を使うと（特に、ルートディレクトリに近いところから使うと）、フォントの検索に時間がかかり、dviout の起動が遅くなることがある（cf.-Fkeep:）

4. cmr10, cmr8などの欧文TrueTypeフォントと欧文PKフォント
    c:\tex\fonts\pk\msbm10.300pk
などとを用いる。使用する欧文TrueTypeフォントは、Property Sheets->[WinJFont]で指定し（edefaultを使えば、フォント毎の指定は必要ない）、-TEXPK:には対応するtfmファイルの存在する場所を書く。
ただし、TrueTypeフォントが存在しない欧文フォントのtfmファイルが、-TEXPK:の指定に該当しないようにするとよい。
そこで、欧文TrueTypeを用いるフォントのtfmをたとえば、c:\tex\fonts\ttf\tfmにコピーして、それを指定すればよい。さらに、和文jfmファイルが
    c:\tex\fonts\jfm\min8.tfm
のような形式で、欧文tfmファイルがc:\tex\fonts\tfmに存在する場合。

-TEXROOT:c:\tex\fonts
-TEXPK:c:^r\pk\^s.^dpk;^r\ttf\tfm\^s.tfm;^r\jfm\^s.tfm

5. 欧文PKフォントは、解像度毎にGTHフォントライブラリにまとめられ、たとえば 300dpi の cmbx10 が、GTHフォントライブラリc:\tex\fonts\dpi300.gth に cmbx10.pk というファイル名で入っている。
また、和文jfmファイルも c:\tex\fonts.gth というGTHフォントライブラリにまとめて入っている、という場合。

-TEXROOT:c:\tex\fonts
-TEXPK:^r\dpi^d^g^s.pk;^r\jfm^g^s.tfm


表示スケールの調整

プレビュー画面の解像度やコントラストなどが適当でない場合は、Option -> Setup Parameters -> [Display] で調整します。

1. [Display] の Start: の項を調整します。

H-scaleを4とすると、横方向を 1/4 に縮めることを意味します。dpi（-dpi: で設定したもの）が、360 であったとすると、表示の時は横方向が実質 360/4 = 90dpi になります。70dpi から 120dpi程度の値になるようにするのが適当でしょう。
V-scaleで、縦方向の縮小を設定します。
明暗を反転した画面にするには、reverse の項をチェックします。
縮小を行ったときは、gray scaleを用いたコントラストの調整が可能です。

注意： 実際には、dviファイルを表示して、Display -> Magnify, Reduce （ツールバーのボタンでも可能）でスケールを調整し、Display -> Blacker, Whiter でコントラストを調節してから、Option -> Setup Parameters -> [Display] を選ぶと、Start: は、現在の値になっています。それを用いて、以下の 2. を行うのがよいでしょう。

2. [Save]を押し、Registryに記録します（cf. Q_S1）。

3. [Apply]を押し、設定値を現在の dviout に反映させます。

これで設定は完了です。


印字位置の調整

0. 印字位置調整用の付属の dviファイル（たとえば、test_a4.dvi）を印刷して、水平／垂直位置を補正すべきであれば、以下のようにします。

1. Option -> Setup Parameters -> [Printer]を選びます（[Help]参照）。

2. Use default area for system drive のチェックをはずして[OK]を押し、印字位置調整用の付属の dviファイルを再度印刷して、補正すべき長さを測ります。

3. 再び、Option -> Setup Parameters -> [Printer]を選んで、-LM: に補正すべき水平位置の長さを、-TM: に補正すべき垂直位置の長さを、1/100 cm 単位で設定します（51 は、5.1mm　を示す）。

最初は共に 0 になっており、印字位置は右下にずれているはずです。そのずれ幅を入力します。-LM: を増やせば左に、-TM: を増やせば上に、印刷位置が移動します。

Landscapeでの印刷も行う場合は、たとえば、test_org.dvi をLandscapeで印刷して（印刷のダイアログで、[Setup]ボタンを押して、印刷の向きを横にする）、垂直方向の補正すべき長さを -RM: に設定します。

4. [Save]を押し、Registryに記録し、次回のdvioutの起動時に参照されるようにします（cf. Q_S1）。

5. [Apply]を押し、設定値を現在の dviout に反映させます。

これで設定は完了です。

注意： 通常の一時的な印字位置補正は、-OX: -OY: で行います。-OX: -OY: の変更は、プレビューにも影響を及ぼします。


dviファイルのdvioutへの関連付け

Option -> Install で自動的に設定されますが、以下のように手動で設定することも出来ます。

Windowsのエクスプローラを起動し（Windowsのスタートメニュー -> プログラム -> エクスプローラ　とマウスでクリック）、そのメニューバーから 表示 -> オプション -> ファイルタイプ -> 追加 を選び、新しいファイルタイプの追加のシートに移動します。

dviファイルに dviout を関連付けます。
関連付けられた拡張子 に dvi を定義し、タイプの説明 には、DVIファイル などと書きます。
さらに、追加 を選んで、新しいアクション のシートに移り、アクション に open を定義し、参照 で、dviout.exe を選択すると（マウスの左ボタンでダブルクリック）、アクションを実行するアプリケーションに dviout が定義されます。

dviファイルにアイコンを設定します。
OK を押して、新しいファイルの追加  のシートに戻り、アイコンの変更 を選びます。
アイコンの変更 のシートで、参照 を押し、dviout.exeを選んで（たとえば、マウスの左ボタンのダブルクリック）さらに、好みのアイコンを選択し、新しいファイルタイプの追加 に戻って 終了 を押し、最後にエクスプローラの オプション のシートで、OK を押して、設定終了です。

以上によって、dviファイルのアイコンをマウスでダブルクリックすると、それが dviout でプレビューできるようになります(cf.no more dviout, -multi:)。


パラメータの自動インストール機能

1. TeXのコンパイラーなどと合わせたインストールでは、フォントの所在やそれの作成方法などが分かっている場合があります。このような場合、dviout の以下の機能を使うと、dvioutのインストールが容易に出来ます。

dvioutが起動されて初期設定が終わった時点で、modeが 0 のままで変更されておらず、しかも-TEXPK:が定義されていない、という場合は、起動した dviout の存在するディレクトリのinstall.parというファイルを探し、存在すればそれをパラメータファイルとみなして読み込んで、Registry にも書き込みます。

install.parに -TEXPK: などを書いておけば、このパラメータファイルは、インストール時のみに読み込まれ、設定に使われることになります。インストールプログラムを作成する際の参考にしてください。

2. dviout は Option->Read Paramaters によって、ファイルに書かれたパラメータを読み込むことができます。このファイルの名前の先頭が$_myown.parというように$_で始まっていると、読み込んだ後Registryへの書き込みが自動的になされます。
また、パラメータファイルの行の先頭の２文字が ;; または ;` となっていると、それは説明文と見なされ、先頭からそれが続く部分の行は、読み込みの際に表示されます。それ以外の ; で始まる行はコメント行と見なされて無視されます。
この説明文で ;` で始まる行があれば、Registry への書き込みが選択可能になります。


印刷

File->Print により、印刷のオプション指定のダイアログボックスが開き、現在表示中のdviファイルを印刷することができます。ダイアログは、[+] ボタンで拡張されます。

・ページのSelection
・ページ指定オプション
・コピー部数指定
・袋綴じ印刷
・印刷のページの順番
・縮小／拡大印刷機能
・dviprtによる印刷機能
・ファイルへの出力
・ページ毎のポーズ機能
・ジョブの統一／分割

・印刷データ出力中でのキャンセル
・各種の印刷方式の違い(Q_P7)

注意： Windowsでサポートされているカラープリンタを用いると（dviprtによる印刷機能を用いないで、Windowsのプリンタドライバを使った場合）、PostScript speicalsで取り込んだカラー画像などのカラー印刷が可能です。

注意： プレビューをしている現在のモードと、プリンタの設定とが合致していないと、正しい印刷ができません（ダイアログボックスの、[Setup...] のボタンで、プリンタ側の設定ができます）。解像度(dpi)、用紙サイズとその向き に注意してください。

ただし、Property Sheets->[REGISTRY]で、印刷の際に異なるパラメータを用いるように設定することができます。

注意： プリンタドライバに設定した用紙サイズや向きとdviout側のそれらの設定が合致していない場合（5%以内の誤差は無視しています）、および、プリンタ側の解像度とdviout側の解像度が合致していない場合、Warning のダイアログボックスが表示されます（dviprtによる印刷を除く）。

前者では、無視するかどうかを尋ねられ

 OK:      用紙サイズの違いを無視して実行
 NO:      再設定

が選択できます。後者ではプリンタ側の解像度に変更して印刷するかどうか尋ねられ、以下が選択できます。

 OK:      変更して印刷する
 NO:      dviout側の解像度で出力
 Ignore:  再設定 or 中止


ページのSelection
ページのSelection <- 印刷ダイアログ
このボタンを押すと、

      マークした範囲
      マークした範囲の最終ページのみ
      マークした範囲の最初のページのみ
      現在のページのみ

が、印刷するページ範囲として設定されます。押す毎に上の4つが順に設定されます（ただし、マークしたページがないときは現在のページのみが設定されます）が、そのあと表示を修正して変更することもできます。

範囲をマークしていなければ、マークしたページと現在のページとの間が範囲とみなされます。マークしたページがなければ、現在のページのみが範囲となります。


ページ指定オプション
印刷ダイアログの[Option]ボタンを押すことにより、印刷ページをユーザが入力したり、ページの出力順序を指定するマクロを使うことができます。外部の印刷プログラムを呼ぶ場合は、無効でこのオプションは無視されます。

[Input by User]を選ぶと、印刷するページを入力できます。たとえば

2 5 8 -23 56- 40-50

と入力すると、2, 5, 8 次に 最初から23ページまで、次に56ページから最後まで、40ページから50ページまで、というように、この順で印刷されます。

P 30-60 . 90-

のように P をつけると、先頭からのページ数でなくて、ページノンブルのページ番号とみなされます。

P    以降の番号は実際のページ番号とみなす。
.    空白ページ出力。
Z+   以降のページ出力後、一旦停止。
Z-   上記の解除
Z    上記のトグルスイッチ
Q    以降を切り捨てて無視
M... マクロブロック（cf. ページ指定マクロ）
@file_name  ページを記述したfile_nameというファイルを取り込む

[Input by User]以外を選んだ場合は、印刷ダイアログで選択した範囲が、ページ指定マクロに基づいて印刷されます。
例えば、4to1 を選んで袋綴じ印刷を指定し、プリンターの両面印刷機能を使うと

[4,1]/[2,3] [8,5]/[6,7] ...

と印刷され、紙面を中央で折って折り目の方で綴じれば、ページ順に並びます。なお、上記の 1 は、選択範囲の1ページ目を意味します。

ページ指定マクロは、dvioutのディレクトリの下の par\*.pgm というファイルに対応し、ユーザが作成することが出来ます。

[OK]       : 選んだやり方で印刷します。
[Check]    : 実際に印刷するページが順に示されます。
[Hide]     : リストから選んだものを隠します。
[Appear]   : 隠されたもののリストから選んで復活させます。
[Kill]     : 隠されたもののリストから選んで削除します。
[->Hidden] : 隠されたもののリストに移ります。
[->Current]: 元のリストに戻ります。
[Edit]     : 選んだマクロファイルを編集します。
[Cancel]   : 何もせずに抜け出ます。


ページ指定マクロ

印刷ダイアログで[Option]を選んだときの出力ページをコントロールするマクロは、dviout のディレクトリの par\*.pgm というファイル群で、一つのファイルが一つのマクロファイルである。その中身の意味は以下の通り。

先頭が#で始まる行は、コメント行。先頭行から続くコメント行の中で、日本語モードでは先頭が#e#以外で始まる行が必要で、その最初の行が、リストボックスに表示される（非日本語モードでは、#j#以外）。

「M」で始まる空白を挟まないブロックがマクロブロックで

  Minitialize;difference;pages

の形をしていて、ページ指定範囲がこのマクロに基づいて出力される。なお、M 以下のマクロの記述部分が無い場合は、マクロの解除を意味する。

・マクロ文中では、v, w, x, y, z の5つの変数が使用可能。

・pages は、「式」または「Z+」,「Z-」,「Z」,「.」を「,」で区切って並べたもので、z > 0 が成立すれば「式」の値のページの出力などを行なう。

・上記終了後はdifferenceに従って変数の値を変え、さらにzの値を1引くが、z > 0 ならば再びpagesに従ったページ出力を行なう、と繰り返す。

・「式」 とは、 変数や数を「+」または「-」で結合したもので、x+5, x+v-3 などのようなものです。

・pagesの「式」の値が指定範囲に入っていなければ、 通常は空白ページが出力される。

・pagesの「式」のいくつかを[  ]で囲んでブロックを作っておくと、その中に範囲内のページ出力がない場合、そのブロックの出力を無視します。[  ] のネスティングは不可。

・initializeとdifferenceは、「代入文」を並べたもので、「代入文」 は 変数+=式,変数-=式, 変数*=式, 変数/=式 変数&=式 の何れかの形のもの。

・変数は、v = w = 0、x は指定範囲の最初のページ番号、yは指定範囲の最後のページ番号、zは指定範囲のページ数、がそれぞれ代入された後、initializeによって初期値が定まる。

C 言語の形式で言えば

   v = w = 0; x = start_page; y = end_page; z = y - x + 1;
   for(initialize; z > 0; difference, z--)
      { pages の出力;}

となります。例えば

 Mv+=y,v&=1,y-=v,z-=v;y-=2,z-=1;y

は偶数ページのみの逆順出力になります。 一枚毎に手で用紙を裏返して行う両面印刷の袋とじは

 Mz+=3,z/=4;x+=4;x+3,Z+,x,Z,[x+1,Z+,x+2,Z]

両面印刷プリンターを用いた、最初のページを空白にする両面印刷袋とじは

 Mz+=4,z/=4,x-=1;x+=4;x+3,x,[x+1,x+2]


コピー部数指定
コピー部数指定 <- 印刷ダイアログ
Copies: が有効なとき、印刷のコピー部数を指定できます。

１ページのみのファイルの場合やdviprtのチェックをONからOFFに切り替えたとき、Copies: が無効になっていることがあります。この場合は、[Setup...]を押して、プリンタの設定のダイアログで[OK]を押してください。

Collate copies をチェックすると、一部ずつ別々に出力されます（サポートされない場合もあります）。

なお、プリンタドライバが複数部印刷をサポートしていない場合は、Copies: は無効です。


袋綴じ印刷
左右のページの幅が調整できます。関連するラジオボタンを押して変更したときに表示されるのは、縮小／拡大を考慮したページの横幅で、これをもとに変更できます。その値を 0 にすると、２ページが重なった印刷となります。（cf. 印刷オプションの使用例）

なお、袋綴じなどでは、[Setup ...] で、用紙サイズや縦横の向きなどを正しく設定するとともに、実際のプリンタ側の用紙と適合していなければ正しい印刷はできないので注意。
dviprtを用いる印刷では、用紙サイズと向きとは、推測を行って、それがデフォルトとなることがある。


印刷オプションの使用例
A4 紙面を A5 に縮小して、A4用紙に袋綴じ印刷
File -> Print で、A4 -> A5 と、unite 2 pages をチェックし、
[Setup...] でのプリンタの設定で、A4 の横置きを選択すればよい。

袋綴じで、1ページから７ページまでの印刷では
Reverse Topが空白 右から左
                          (1,2) -> (3,4) -> (5,6) -> (7, )
   X                      (7, ) -> (5,6) -> (3,4) -> (1,2)
            X             ( ,1) -> (2,3) -> (4,5) -> (6,7)
                     X    (2,1) -> (4,3) -> (6,5) -> ( ,7)
   X        X             (6,7) -> (4,5) -> (2,3) -> ( ,1)
   X                 X    ( ,7) -> (6,5) -> (4,3) -> (2,1)
            X        X    (1, ) -> (3,2) -> (5,4) -> (7,6)


印刷のページの順番
偶数／奇数ページのみ、逆順、袋綴じ、袋綴じページの順が右ページから左ページに進む、袋綴じの最初のページを空白にする、などのオプションが指定できます。


縮小／拡大印刷機能
可変サイズのフォント（例えばTrueTypeフォント）以外（例えばPKフォント）の文字品質は悪くなります。

Adjust origin のチェックで、dvi原点の位置を、縮小／拡大に応じた位置へ移動して調整するかどうかの指定ができます。


dviprtによる印刷

印刷のダイアログで、dviprtの項をチェックすると、Windowsのドライバに任せずに、dviout内蔵のプリンタドライバで印刷したり、コンソール版のdviprtやdvipsなどを呼び出して、印刷することができます。

前者では、ESC/P, PC-PR, NM系、および、LIPS III/IV, ESC/PageのLBP用ドライバの他、CFGファイル（[CFG file]ボタンで選択可）を用いて、各種プリンタに対応可能です。特に、LIPS III/IV, ESC/Pageの場合は、十分な最適化がなされているので、高速な印刷が期待できます。
ただし、カラー印刷はサポートしていません。

コンソール版dviprtを使うには、あらかじめ

dviprt foo.dvi

でfoo.dviが印刷できるよう、dviprtのマニュアルを参照し、環境変数やパラメータファイル（デフォルトのファイル名は、dviprt.par）を設定しておくことが必要です。

この状態で、印刷のためのダイアログでdviprtの項をチェックして[OK]を押すと、dviprtでの印刷が実行されます。

[OK]を押す前に[Setup...]を押すと、dviprtを呼び出すときのパラメータなどを一時的に変更することができます。

また、dviprt以外のプログラムを使うなど、各種の処理の設定も可能です（cf. -dviprt の設定例、Property sheets -> [Printer] -> -dviprt:）。

注意: LIPS III/IVあるいはESC/Page以外では、dviprtでの袋綴じ印刷機能はサポートされていません。


-dviprt の設定例

デフォルト（Property sheetの[Printer]で、-dviprt:の項が空、あるいは、+ のみのとき）は、

dvipdfm^X{x}.exe ^w -s ^a-^b "^q"^Y{;"^d.pdf"}^z^{dvipdfm&x}^{View PDF &?}Make PDF by dvipdfm(x)

です（印刷前のダイアログの[Setup]で示される）。

echo^-O=^t^>>^^f;dviprt^-=^f^^q^^p;copy^^t^sprn^/b;del^^t

と設定すると、環境変数TMPが設定してあって、それが c:\tmp のときで、１から５ページまで foo.dvi を印刷するときは、

echo -O=c:\tmp\dvitmp.$$$ >> c:\tmp\dvitmp.par
dviprt -=c:\tmp\dvitmp.par foo.dvi 1-5
copy c:\tmp\dvitmp.$$$ prn /b
del c:\tmp\dvitmp.$$$

というバッチファイルが作成され、実行されます。
c:\tmp\dvitmp.par には、たとえば -y=A4P などというパラメータが書かれます。

Windowsのコンソール版dviprt.exeを用いる場合は、それが c:\dviout にあるときは

+c:\dviout\^P

と指定すればよいでしょう。この場合、バッチファイルを経由せずに、直接実行されます。

dviout内蔵のLIPS III対応ドライバを使う場合には

+`l

LIPS IV対応ドライバでは

+`lD600

とし、LP-9000の場合のように600dpiのESC/Page対応ドライバを使うには以下のようにします。

+`mD600

これらのLBP用ドライバの場合は、さらにサブパラメータを続けて指定できます。


CFGファイル
dviout for Windows内蔵の汎用ドライバを使うには、デフォルトの

ESC/P, PC-PR, NM系、および、LIPS III, LIPS IV, ESC/Page

以外の場合、各プリンタに合わせたプリンタ定義ファイルを用います。

必要な情報を定義したソースファイル（通常 .src という拡張子のファイルになっている）を、optcfg.exe によって、dviout for Windowsが読み込み可能なバイナリファイル（通常 .cfg という拡張子のファイル）に変換したものが用いられます。

ソースファイルの書き方は、別のドキュメントをご覧ください。付属の多くの例が参考になるでしょう。また、付属しているプリンタ定義ファイルによって PBM, G3FAX, EPSF形式の出力もできます。


LBP用ドライバ

-dviprt:オプションのパラメータの指定 `l または`L によってCanonのLIPS III/IVを使用するLBP（レーザービームプリンタをLBPと呼ぶことにする）に、`m または`M によってEPSONのESC/Pageを使用するLBPにそれぞれ対応します。
この場合、フォントのダウンロード機能とプリンタ内蔵の和文スケーラブルフォントを使うことができます。
`L, `M のように大文字で指定すると、使用する解像度がプリンタの解像度と異なっていた場合、プリンタの解像度に自動的に変更します。
スケーラブルフォントは、デフォルトでは、「明朝体」と「角ゴシック体」を用いますが、LIPS IIIの場合には「角ゴシック体」が使用できる状態にない場合もあり、このときには和文フォントは全て「明朝体」となります。

注意： JXL4以外の和文フォントの優先順位は、LBP内蔵の和文フォント、WindowsのTrueType和文フォント、それ以外の和文フォントの順です。
WindowsのTrueType和文フォントを使う場合は、以下のサブパラメータの v, f を指定する必要があります。さらに、k も指定するのがよいでしょう。

LIPSIII/IVでは、Outline fontなどの文字装飾を指定した場合、プリンタの仕様上からLBP内蔵和文フォントにおける制限が存在します。

-dviprt: で、LIPS III/IVまたは、ESC/Pageのドライバを指定した場合、さらに以下のようなサブパラメータを ; または : で区切って指定することができます。

サブパラメータ v: 和文フォントの縦横の比率調整、あるいは、プリンタの和文フォントを用いない
サブパラメータ d: フォントのダウンロードの許可と許容容量
サブパラメータ r: フォントのダウンロードの許容容量の計算法
サブパラメータ k: 和文フォントのダウンロード
サブパラメータ m: ダウンロード範囲の調整
サブパラメータ f: 和文フォントの対応付け
サブパラメータ D: プリンタの解像度
サブパラメータ o: パラメータファイル読み込み
サブパラメータ j: 和文フォントのベースライン調整
サブパラメータ s: 和文フォントの拡大・縮小
サブパラメータ u: データ転送ブロックの変更
サブパラメータ c: LIPS III/IVにおけるデータ圧縮
サブパラメータ E: 用紙の印字限界付近の文字の処理

LIPS IIIの場合のデフォルトは、

-dpi:300
-dviprt:`lv1000;m2;d512;j79;s1047;D300

です。LIPS IVの場合は、-dviprt:+`lD600 の指定で、次のデフォルトになります。

-dpi:600
-dviprt:`lv1000;m2;d512;j79;s1047;D600

ESC/Page対応のLBP（LP-9000/7000/3000/2000など）の場合は

-dpi:300
-dviprt:+`Mv1000;m2;d512;j90;s1000;D300

ですが、-dviprt:+`MD600 を指定すると、上記のデフォルトのD300がD600に変わって、LP-9000（600dpi）に適合します。

ただし、-dviprt:+`MD240を指定したときのみ、デフォルトj90も変わって

-dpi:240
-dviprt:+`mv1000;m2;d512;j200;s1000;D240

がデフォルトとなり、LP-7000（240dpi）に適合します。


サブパラメータ v
サブパラメータvに続く数字で、和文スケーラブルフォントの縦横の比率を変えることができます。与えた数字の1000分の1倍に縦のサイズを拡大または縮小します。

デフォルトは1000ですが、200以上5000までのみ許され、それ以外では1000と解釈されます。
ただし、0のみは特別でLBP内蔵のスケーラブルフォントを用いないことを意味します。


サブパラメータ d
サブパラメータdに続く数字で、フォントのダウンロードの許容容量をKbyte単位で指定します。デフォルトは512です。0はフォントのダウンロードを行なわないことを意味します。

サブパラメータ kを指定しない場合、フォントのダウンロードは、1バイト系の文字に対してのみ行なわれます（NTT JTeXの和文フォントは1バイト系なので、オプション-ntt:で2バイト系に変換しない限りはダウンロードの対象となります）。

ダウンロードは、指定された印字対象範囲での使用総数が多いフォントから優先して、指定回数以上使用された文字に対し、許容容量内で行なわれます。

ただし、ダウンロードされた欧文フォントセットの総数が、「32から使用するスケーラブルフォントの総数を引いた数」に達すると、それ以上のダウンロードは行なわれません（このとき、コードが128以上の文字を含むフォントは2と数えます）。


サブパラメータ r
サブパラメータ dで用いられるダウンロードサイズの計算は、デフォルトでは各フォントのセルサイズ(そのフォントに含まれるダウンロード文字の最大の横のドットサイズと最大の縦のドットサイズ)を基準に行ないます。

rを指定すると、実際の転送データ量（各文字毎のサイズを基準とする）に変更されます。セルサイズ基準の方が、大きな値となります。


サブパラメータ D
サブパラメータDでプリンタの解像度をdpi単位で指定します。-dpi:は、使用するフォントの解像度なので、例えば、-dpi:240,  -dviprt:+`lD300 とすると、80%に縮小された印刷となります。


サブパラメータ o
サブパラメータoでパラメータファイルを指定できます。
これを指定するときは、-dviprt:`lのサブパラメータの最後に書きます。
optcfg.exeで作成したものを指定できます。

これを用いる場合、dviprtは通常のプリンタ初期化を行なった後に（この時、-y:で指定された用紙選択も行なって）指定されたパラメータファイルに記述された初期化コードをプリンタに出力しますので、-y:による用紙選択が無効になることがあるので注意してください。


サブパラメータ j
オプション-J:はLBP内蔵フォントにも影響しますが、サブパラメータ j は、LBP専用のベースライン調整パラメータです。

あるベースライン上に普通にLBP内蔵漢字フォントをおいた時、そのフォントの高さのnum%がベースラインより下に来るようにLBPが設計されている場合、jnum*10をサブパラメータに指定すれば、LBP内蔵フォントはベースライン上に乗るようになります。

LIPS III/IVでは79がデフォルトです。


サブパラメータ k
プリンタ内蔵の和文フォント以外の和文フォントを使う場合（cf.サブパラメータ v、サブパラメータ f）に、それを1バイト系の欧文フォントに混ぜてダウンロードすることを指定します。例えばWindowsのTrueType和文ゴシックフォントを使用する場合などに有効です。
プリンタ内蔵以外の和文フォントを使わない場合は指定しても無意味です。
また、kに続く2つの数字で和文フォントのダウンロードをコントロールできます。

k[=max_char[;skip]]

これらは、max_char（デフォルトは63）より多くの文字をダウンロードした欧文フォント、および使用頻度の多いほうから数えてskip（デフォルトは4）番目またはそれ未満の欧文フォントには、和文フォントを混ぜないことを意します。
後者、または、前者と後者の数字を省略すると、それぞれデフォルトの値となります。

特に、max_charに0、あるいはskipに十分大きな数字を指定すると、欧文フォントをダウンロードした後、欧文フォントに埋めこまないで和文フォントのみをダウンロードすることになります。


サブパラメータ m
サブパラメータmでは、指定した印字対象範囲でmに続けて指定した数以上出現した1バイト系の文字をダウンロードすることを意味します。

この数のデフォルトは2です。

ただしその文字の属するフォントセットの文字の出現総数が4未満の場合あるいは、縦または横のドットサイズが128を越える文字はダウンロードしません。


サブパラメータ f

サブパラメータfでプリンタ内蔵のスケーラブルフォントの指定を行ないます。これは、複数指定可能で順に解釈されます。指定されなかったものはデフォルトの指定を使います。指定のフォーマットは以下のとおりです。

fname=shotai[G][H][F][S][O][;vh_ratio[;weight[;dots;dots;...]]]

name
TeXにおけるフォント名（^sに代入されるもの）から（後ろに数字-通常ポイント数-があるときは）後ろの数字を取り去ったもので、min, gothなど

shotai
LIPS III/IVにおける書体番号で、明朝体80、角ゴシック体81、丸ゴシック体82、教科書体83、楷書体84など

ESC/Pageのときは、角ゴシック体漢字9、明朝体漢字10、丸ゴシック体漢字66、教科書体漢字67、楷書体漢字68、行書体漢字69です。

さらに、オプションとして、
G  擬似ゴシックを指定するとき指定（LIPS III/IVでは、1 dot 幅を増やす。ESC/Pageでは線幅設定値1）
H  擬似ゴシックを指定するとき指定（2 dot 幅を増やす。ESC/Pageでは、線幅設定値3）
F  LIPS III/IVでは、Fill patternを指定、ESC/Pageでは、20%スクリーンパターンを指定
O  Outline fontを指定するとき指定
S  Shadow 印字を指定するとき指定

G, Hは同時に指定できませんが、他は重複して指定できます。

vh_ratio
字体の縦横比の1000倍を指定。

ただし、0は、そこで指定されているフォントに対しプリンタ内蔵スケーラブルフォントを割り当てないことを意味します。さらに、dotsが指定されていれば、それに該当するものはデフォルトとなり、該当しないものは、次以下にfの指定が続けばそれで判断され、なければデフォルトになります。
また、1の指定は、dotsに該当するものに関して、プリンタ内蔵スケーラブルフォントを用いないことを意味します。

weight
デフォルト22（明朝22, 角ゴシック22, 丸ゴシック2）

dots
ここでの指定をスキップし次の指定を見る境界となるドットサイズを指定。
dots-dotsのように範囲による指定を含めることができます。

このプリンタ内蔵フォントの指定において、shotaiの後の任意の;以降を省略することができます（デフォルトが用いられる）。例えば、

fgoth=82;1000;2;fmin=80;1000;22;16-24;32
fgoth=80H;1000;22;44;fgoth=80OS;2000


サブパラメータ s
サブパラメータsは、LBP専用の文字拡大縮小調整パラメータです。
LIPS IIIの和文フォントはデザインの関係上10ptの幅を要求しても、実際に印刷される文字の幅はその95.5%程度であるため、これを補正するものです。

1000で拡大縮小なし、2000で2倍の大きさになります。サイズが変わっても文字の左右中心線の位置は変わらないように印字位置を補正するようになっています。デフォルトは1047です。

これはオプション-S:による拡大縮小の影響も受けます。例えば-S:500,  -dviprt:+`ls2000 とすれば、LBP内蔵フォントは拡大縮小されないことになります。


サブパラメータ u
CanonのLBPでは、EPSFやTPIC、Windowsの和文TrueTypeフォントなどを多用した文書を印刷する場合、印刷結果に横方向に白すじが入ったり、サービスマン・コールを起こしてLBPがダウンする場合がまれにあります。
こういう場合にこのオプションを指定すると問題なく印刷できる場合が有ります。

引数には整数を指定しますが、これは具体的にはプリンタCFGファイルのminimal unitやpinsに当たる部分を変更します。

デフォルトはminimal unit=1, pins=8ですが、引数にnを指定した場合nの絶対値をminimal unitに、nが負であればpinsを24に変更します。

問題が起きた場合にu10やu-10等を行なうと効果的があると思われます。サブパラメータ cも参照してください。


サブパラメータ c
これはLIPS III/IVでのラスタイメージデータ転送で、データ圧縮を行なうためのフラグです。

通常はほとんど効果がありませんが、サブパラメータuを指定した場合に役に立ちます。たとえば、
-dviprt:`lc;u-10等と指定します。

ESC/Pageプリンタの場合は、この指定は無視されます。


サブパラメータ E
LIPS IIIでは「内蔵スケーラブルフォントやダウンロードフォントの文字が、用紙の境界にかかると印字できない」という仕様のようです（ESC/Pageでは、印字可能ですが、dviout側の対応が不十分なので、境界で分割される文字を印字する場合は、このオプションを使ってください）。

例えばposter.texなどを使って、1ページを複数枚の用紙に分けて印字する場合にこのような問題が生じます。

サブパラメータEを指定した場合、用紙の境界にかかる可能性のある文字に対して、LBP内蔵和文スケーラブルフォントの印字にはベクトルモードに移ることにより、そのほかのフォントでは用紙に入る部分をビットマップで転送することにより、対応します。

ベクトルモードでは文字修飾などに一部制限が出るうえ印刷コードも冗長になるので通常は使用しない方が賢明です。


LBP内蔵和文フォントにおける制限
・フォントサイズが420x420 dot（LIPS IIIのとき、約3.5cm）以上の場合
・拡張tpic specialsのrtによって、90度単位以外の回転を行なった場合
・用紙の端で切れる文字をサブパラメータEを使って印字した場合

この時、サブパラメータ fで指定された、書体指定での Fill pattern（F）, Shadow（S）やweight等の指定は無効となります。


プリンタの制御コードの取り込み
内蔵のプリンタドライバによる印刷（印刷ダイアログでのdviprtのチェック）では、プリンタ制御コードなどを書いたファイルを直接読み込んで、プリンタに出力することができます。

TeX中で、以下のspecialsで指定しますが、LBPのページ記述言語で画像を描いたものを取り込む場合に用いると便利です。

\special{lipsfile=name}
\special{escpagefile=name}
\special{pdlfile=name}

これは順に LIPS III/IVの場合、 ESC/Pageの場合、内蔵ドライバを使ったすべての場合に、name（拡張子が無いときは、順に name.lp3、name.epg、name.pdl）というファイルの中身をそのままプリンタに出力します。該当しない場合や、プレビューの際は無視されます。

LIPS III/IVおよびESC/Pageの場合は、このspecialが書かれたTeXにおける現在のページ位置で出力がなされます。

詳しくは、添付のドキュメントをご覧ください。


ファイルへの出力
ファイルへの出力 <- 印刷ダイアログ
Print to File をチェックすると、プリンタへの出力データがプリンタでなくファイルに出力できます。

dviprtをチェックして外部のプログラムでの印刷を行う場合は無効です。


ページ毎のポーズ機能
各ページの印字に先立って、ページ毎にポーズしてユーザの指示を待ちます。

（dviprtをチェックして）内蔵のドライバを使う場合は、無効です。


ジョブの統一／分割
ジョブの統一／分割 <- 印刷ダイアログ

複数ページの印刷で、Windowsの一つのジョブとするか、別々のジョブとするかが、印刷ダイアログの[Unite job]で選択できます。一つのジョブにすると、印刷のキャンセルが容易になります。dviprtがチェックされていないときのみ有効です。

FAX送信のときは、一つのジョブにしないと、１ページずつ送信して複数回電話を掛けてしまいます。

PostScriptプリンタ用のWindowsドライバなどでは、データ変換に時間がかかる場合があり、ジョブをページ毎に分割するとすぐに印刷が始まるので印刷が高速になることが期待できます。

印刷のためのデータ量に比べてハードディスクの空きが十分にあるかどうかによって、一つのジョブとするかどうかのデフォルトが決まります。

印刷ページ範囲を変更すると、デフォルトに再設定されますので、デフォルトと逆にする場合は、印刷範囲を決定してから変更してください。

データ量をバイナリのビットマップデータとみなし、2倍の余裕をみてディスクの空きと比較していますが、PostScriptプリンタなどでデータ量がこの推定と異なる可能性もありますのでご注意ください。


印刷データ出力中でのキャンセル
印刷データ出力中には、途中でキャンセルすることが可能なように、そのためのダイアログが表示されます。

ただし、dviprtをチェックした印刷の場合は、表示されません。


ユーザインタフェース

1. dvioutのWindowは、プレビューのためのmain window(Preview window)の周りに、以下のようなものがついています。そのうちのタイトルバーとメニューバー以外は消すことができます(メニューバーのView Menu)。

  1.1. タイトルバー: 最上段にあり、表示しているDVIファイル名がフルパス名で示されます。dvioutからフォーカスが他に移ると、ファイル名の部分のみが示されます。

  1.2. メニューバー: タイトルバーの下にあり File, Jump, Display, View, Presentation, Option, Help からさまざまなサブメニューに分岐します。

  1.3. ツールバー: メニューバーの下のもので、各種ツールボタンの他、文字列サーチのための文字列リストのWindowとページ番号のWindowがあります。右の６つのツールボタンは、別の６つと入れ替えられます(2nd tool butttons, cf.View Menu)。
2nd tool buttonsには、自由に機能が再定義できます(Q_V10, Q_O4) 。

  1.4. ステータスバー: 最下部にあり、ページ番号、解像度(dpi)、ガンマ補正値、ページサイズなどの情報が表示されます。

  1.5. スクロールバー: Windowsではおなじみのもので、表示された紙面を上下左右にスクロール（移動）します。必要な場合のみ、右や下に現れます。

  1.6. ページスライダー: 右端にあり、表示されたページを移動するのに使われます。その最右部分は、範囲指定(cf.Jump Menu)した場合の領域を示します。

2. 上記のそれぞれについてマウスでの操作が可能です(Q_V12)。IntelliMouseにも対応しています。

3. キーボードで各種操作ができます。キーボードの各キーに対する機能は、自由に定義できます(Property Sheets->[Key], Q_O10)。


メニューバー

File Menu
  History, Open, reNew, Print, Dviprt, eXit+Save, Quit
  Save as image: File, BMP in clipboard, EMF in clipboard
  Font/Image Embedding,  Open Log File
Jump Menu
  Next page, NExt page Top, Previous page, PreVious page Buttom, Top page, Bottom page, Down to next page, Up to previous page, More, Input page number, Last file
  History, Former history, Latter history, Quit history,
  Enable Hyper Jump, DireCt Jump to Editor, Graphic Editor
  Mark Page, -> Goto mark, <-> Exchange mark,  Mark Range,
  More: -50, -20, -10, -5, -2, +2, +5, +10, +20, +50 (page)
Search Menu
  Find, Upward, Downward
Display Menu
  Size: Magnify, Reduce, Fit, Full
  Preset: View1, View2, View3, View4
  Contrast: Blacker, Whiter, Reverse
  Loupe: magnify, reduce, bigger, smaller, measure, kill cursor
  Region: On, Cut, Recover
  Mouse shape
  two pages, rev-two pages, Y-two pages, cross pages, 16 pages
  Graphics, Color special, Color replace, Kill stop level
View Menu
  Tool Bar, Status Bar, Page Slider, Scroll Bar
  Change Tool Buttons, Flat Scroll Bar, Show Move Button, Reverse Move Button, Show Warning, Show Child Window, Animation cursor
  Grid: On/Off, Scale
  Information Window: Large, Medium, Small
  Background: default, white, black
  Small Editor
Presentation Menu
  Presentation switch, Presentation Menu
  Presentation type: general screen, white screen, black screen, white background, black background
  Cover sheet: Off, On, On for Pause, Scroll to Pause
  Cover type: bottom, right, left, bottom + right, bottom + left
  Use Mouse Button: Left, Right
  Draw: line, box, erace, thick, red, black, blue, green
  Cut edge
  Seamless Hyperjump
  Save Presentation settings
Paper Menu
  A*:  A3, A4, A5, A6, A7
  B*E: B3E, B4E, B5E, B6E
  B*J: B3J, B4J, B5J, B6J,
  KIKU, 46, NewBook, AB, Letter, Legal, Executive, Post Card,
  SVGA, XGA, SXGA, UVGA, User defined
  Landscape
Option Menu
  Setup Parameters, Choose Parameters, Read Parameters, All Parameters, Non-default Parameters
    Mode, No more dviout, Change Japanese fonts
  Macro: 1, 2, 3, 4, 5
  dviout specials, source specials, Embedded Fonts, Check color specials, Continuous Renew, Clipboard + Editor
  Install, Uninstall
Help Menu
  Help Topics, How to Use Help, Use Help in English, Troubles in dviout, Tips on dviout, Help TeX
  Sytem Info
  Other Info.: Screen/File Info, Font Info, Buffer Info, Key table, Parameters
               URL of HyperTeX, Anchors of HyperTeX, Source specials, Embedded Fonts, initial.par
               Character size of TrueType
  About dviout


File Menu
File Menu <-メニューバー

History: 過去に読み込んだdviファイルあるいはそのフォルダーから選ぶ（フォルダの履歴）
Open: Windowsのファイルメニューからdviファイルを選ぶ
reNew: 現在のdviファイルの再読み込み
Print: 印刷
Dviprt: Dviprt機能（印刷ダイアログ）
eXit+Save: dvioutのWindowサイズや位置、ルーペの状況、マウスカーソルの形などの情報を保存して、dviout を終了する。この情報は、次回の起動のときのデフォルトとなる。
Quit: 上記の情報の保存をせずに、dviout を終了する。

Save as image: 表示中のページ全体または指定した矩形領域をBMCまたはEMFまたはBMPファイルとしてセーブ（cf. Q_O7）
Automatic Save: 表示中および新たに表示するページをBMC/EMF/BMPファイルとしてセーブ（ABC出力プラグインにより、PGNなどにも対応）。EMFまたはBMP形式の場合はファイルでなく、クリップボードにコピーできる。
Font/Image Embedding: DVIファイルに対してフォントや画像の埋め込みを行う。
Open Log File: ログファイルをオープン／クローズする（オープンの状態のとき、チェックマークがつくトグルスイッチ）。
エラー情報や、Option Menu におけるパラメータの設定状況、Help Menu における各種情報などが記録できる。


Automatic Save
Automatic Save <- File
表示中および新たに表示するページを自動的にBMP, BMCまたはEMF画像ファイルとしてファイルにセーブする（File Menu）

ファイル名の指定で^fはDVIファイル名から拡張子を除いたもの、^dはページ番号を表す。^とdの間に1から9までのいずれかの数字を書くと、数字の桁数を表し、それ以下の桁のページの場合は0を詰める。例えば以下のように指定する。

^f.^3d


Jump Menu
Jump Menu <-メニューバー

Next page: 次のページに移動
NExt page Top: 次のページの先頭に移動
Previous page: 前のページに移動
PreVious page Bottom: 前のページの末尾に移動
Top Page: ファイルの先頭のページに移動
Bottom Page: ファイルの最後のページに移動
Down to next page: 紙面下部または次ページ先頭に移動
Up to previous page: 紙面上部または前ページ末尾に移動
More(ページ相対移動): -50, -20, -10, -5, -2, +2, +5, +10, +20, +50
Input page number: ページ番号をキー入力して移動
Last file: 前回のファイルへ移動

History: 過去にプレビューしたページのヒストリーから選んで移動
Former history: プレビューしたページのヒストリーを一つ遡る、あるいは前回のファイルへ移動
Latter history: プレビューしたページのヒストリーから一つ新しい方に移動
Quit history: 上記ヒストリーの移動から抜け出す

Enable Hyper Jump: HyperTeX specials を有効／無効にする。トグルスイッチで、有効になっているときチェックマークがつく。
DireCt Jump to Editor: これにチェックがついているときは、SHIFT+マウスの左ボタンクリックで、source specials によるエディターへのジャンプが可能ならば、直ちにそれを行う。
Graphic Editor: 取り込み画像ファイルに対し、エディタへのジャンプ機能のON/OFF（-gsrc:）。

Mark Page: 現在のページにマークをつける。すでにマークのついたページが別にあった場合は、それはキャンセルされ、現在のページのみにマークがつく。
-> Goto mark: マークのついたページに移動
<-> Exchange mark: 現在のページにマークをつけ、マークのついていたページに移動
Mark Range: マークのついたページと現在のページと、その間のページを範囲指定する（ページスライダーに表示される）。

よく使う機能があれば、それをキーに登録しておくとよいでしょう（[Key]）。


Search Menu
Search Menu <-メニューバー

Find: 文字列サーチのダイアログボックスを開く。
Upward: 表示中のページの末尾（ただし、表示中のページで直前にサーチが行われていた場合は、その位置）から文書の先頭に向かって文字列サーチを行う。
Downward: 表示中のページの先頭（ただし、表示中のページで直前にサーチが行われていた場合は、その位置）から文書の末尾に向かって文字列サーチを行う。


Display Menu
Display Menu <-メニューバー

Size
   Magnify: １段階拡大したプレビューを行う
   Reduce: １段階縮小したプレビューを行う
   Fit: スクロールせずにプレビュー可能な最大サイズで表示する
   Full: 縦、または横の一方のみのスクロールでプレビュー可能な最大サイズで表示する

Preset
   View 1, View 2, View 3, View 4: Property Sheet の [Display] で設定した画面（４種）の設定に変更する。選んだものにチェックマークがつく。

Contrast
   Blacker: 文字のコントラストを上げる（gray scale の調整）
   Whiter: 文字のコントラストを下げる
   Reverse: 白黒を反転する

Loupe
   magnify: ルーペの倍率を上げる
   reduce: ルーペの倍率を下げる
   bigger: ルーペのサイズを大きくする
   smaller: ルーペのサイズを小さくする
   measure: 矩形のルーペに目盛りをつける
   kill cursor: ルーペ表示の時マウスカーソルを消す

Regeon
   On: Shiftを押しながら、マウスの左ボタンと右ボタンクリックで、矩形領域を指定する。トグルスイッチ
   Cut: 矩形領域を切り出して紙面とする
   Recover: 切り出し前の紙面に戻る

Mouse shape: マウスの形を変更する（手の形のとき、左ボタンを使ったスクロールが可能）

two pages: 2ページ同時に表示される（トグルスイッチ）。
rev-two pages: 2ページ同時に左右逆に表示（トグルスイッチ）。
Y-two pages: 2ページ（プレゼンテーションモードでは全ページ）が上下に表示される（トグルスイッチ）。
cross pages: 4ページ同時に縮小表示される。Page Up/Down, Space／BSキーでページ・スクロール、右マウスボタンでそのページにジャンプ。
16 pages: 16ページ同時に縮小表示される。Page Up/Down, Space/BSキーでページ・スクロール、右マウスボタンでそのページにジャンプ。

Graphics: グラフィックファイル読み込みの ON/OFF（ONのときは、-GS:の設定に従う）
Color special: special による文字の色付けの ON/OFF
Color replace: 色の上塗りの AND演算 <-> REPLACE の切り替えをする。ただし、Whiteは常に REPLACE となる。
Kill stop level: dviout specials の `+<levels> の <levels> を無視。


View Menu
View Menu <-メニューバー

Tool Bar: ツールバーの表示／非表示
Status Bar: ステータスバーの表示／非表示
Page Slider: ページスライダーの表示／非表示
Scroll Bar: スクロールバーの表示／非表示

Change Tool Buttons: ツールバーの右側のボタンを別のものに変更する。（右の6つのUserボタンは、ユーザが機能を定義できる。cf. Q_O4）
Flat Scroll Bar: スクロールバーを平面的なものにする（次回の起動から有効）
Show Move Button: 前、後、先頭、末尾のページに移動する４つのボタンの表示／非表示（次回の起動から有効）
Reverse Move Button: 上のボタンによる移動の向きを逆にする。
Show Warning: Waningメッセージの表示／非表示
Show Child Window: 子プロセス実行時のWindowの表示／非表示（-Wshow: に対応）
Animation cursor: アニメーションカーソルの有効／無効（source specials/HyperTeX）
Grid: プレビュー画面でのグリッド（格子）の表示／非表示／スケール調整
Information Window: Large／Medium／Small Warningや情報表示で下部に表示されるWindowsのサイズ
Background: 背景色をデフォルト／黒／白から選択（次回の起動から有効）

Small Editor: 小さなエディターが開く。編集内容は、クリップボードとの間でコピーできる。


Presentation Menu

Presentation switch: プレゼンテーション・モードへの切り替え
Presentation Menu: プレゼンテーション・モード移行時にメニューを有効に
Presentation type: general screen, white screen, black screen, white background, black background
Cover sheet: Off, On, On for Pause
プレゼンテーション・モードでカバーシート(cover sheet)を使う。なお、On for Pause では、\special{pause}の存在しないページはカバーシートを除いた状態で表示する。
               Scroll to Pause \special{pause} の位置まで[Sapce]でスクロールする。On, On for Pauseのときのみ有効。
Cover type: bottom, right, left, bottom + right, bottom + left
Use Mouse button: Left, Right プレゼンテーション・モードで、左／右のマウスボタンを[Space]キーの機能にする。
Draw: line, box, erace, red, black, blue, green プレゼンテーションモードでの線画の指定。

Cut edge: 紙面の上下左右の空白を削る（cf.-edge:）。
Seamless Hyperjump: Hyperjump を行うときにダイアログを表示しない（セキュリティー上問題のない場合にのみチェックしてください）
Save Presentation settings: プレゼンテーション・モードの cover sheet のチェックと, Presentation type, cover type の現在の設定, プレゼンテーション・メニューの設定，および HyperTeX, dviout specials, source specials, 埋め込みフォント読み込み, の有効／無効の現在の設定を以降の起動時の初期値に設定


Paper Menu
Paper Menu <-メニューバー

A* : A3, A4, A5, A6, A7
B*E: B3E, B4E, B5E, B6E
B*J: B3J, B4J, B5J, B6J,
Legal, Letter, Executive, Post Card
Special Size: 46, KIKU, NewBook, AB, GovLegal, HalfLetter, GovLetter,
              SVGA, XGA, SXGA, UVGA
User Defined

Landscape: Portrait と Landscape の切り替え


Option Menu
Option Menu <-メニューバー

Setup Parameters: dvioutの各種パラメータの表示／設定／変更

Choose Parameters: パラメータの設定リストから選択して変更する。

Read Parameters: パラメータを書いたファイル（デフォルトは、dvioutの存在するディレクトリのサブディレクトリ par で、拡張子は .par）を選択して読み込み、パラメータを変更する(cf. Q_S7)。

Read Parameters: パラメータを書いたファイル（デフォルトは、dvioutの存在するディレクトリで、拡張子は .par）を選択して読み込み、パラメータを変更する(cf. Q_S7)。

All Parameters: すべてのdvioutのパラメータの設定値の出力（dviout.par などで読み込み可能な形式）
Non-default Parameters:　デフォルトと異なるdvioutのパラメータの設定値の出力（dviout.par などで読み込み可能な形式）

Mode: モードの変更を行う

No more dviout: no more dviout の設定／解除

Change Japanese fonts: 使用する日本語フォントを変更する。

Macro: 1, 2, 3, 4, 5: キーマクロの実行。

dviout specials: dviout specials の有効／無効。
source specials: source specials の有効／無効。
Embedded Fonts: Font/Image Embeddingによって埋め込んだフォント使用の有効／無効。
これら３つのデフォルト値は、Presentation->Save Presentation settingsで現在の設定が記録されます。
Check color specials: color specials のスタックのページ独立性のチェックの有効／無効。
Continuous Renew: DVIファイルの更新を常に監視する。
Clipboard + Editor: dviout special `in で，CTRLを押さずに直接Editor入力。

Install: インストールするときに最低限必要なパラメータの設定を行う。
Uninstall: dviout をアンインストールするため、dvioutがregistryに書き込んだ変更を、すべて元に戻す。


Choose Parameters
Choose Parameters <- Option
[Ok]         選択されたものの説明が表示される。さらに、その設定が可能。
[Save]       名前、タイトル、コメントをつけて現在のパラメータの設定を保存する。
[Hide]       選択されたものを（拡張子を .pas に変えることにより）リストから隠す。
[Appear]     隠されたものから選んで、元のリストに戻す。
[Kill]       隠されたもものの中から選んだパラメータファイルを削除する。
[->Hidden]   隠されたもののリストを表示。
[->Current]  隠されたもののリストから元のリストに戻る。
[Edit]       選択されたものを編集する。
[Cancel]     抜け出る。

dviout のフォルダのサブフォルダ par にあるパラメータファイル *.par で、タイトル行のあるものをリストアップし、それから選択して設定する。

[Save] では、現在のパラメータの設定が、名前とタイトルと説明とを書いて保存される。[All] がチェックされると全てのパラメータの設定が、そうでない場合は、デフォルト以外のパラメータの設定が対象になる。[Registry] のチェックは、Registry へ設定値の書き込みの選択ボタンの表示を意味する（従ってdviout の起動時のデフォルト設定が可能になる）。

パラメータファイルの書式（-Set: を活用すると便利）はQ_S3に述べてありますが、そのほか以下の意味があります。

先頭が ; または # の行は、コメント行。
最初の行が ; で始まるとき、行の先頭が ; で始まる連続した行ブロックをヘッダと呼ぶ。このヘッダの中で

先頭が ;# で始まる行があれば、その最初の行がタイトル行。ただし、日本語Windowsのときは、先頭が ;#e の行は無視され、非日本語Windowsのときは、先頭が ;#j の行は無視される。

先頭が ;; または ;` で始まる行（最大20行）は、パラメータを読み込む際のダイアログに表示される。
;` で始まる行があれば、（以降の dviout でも設定を有効にするため） Registry にパラメータを書き込むボタンがダイアログに表示される。
本来のリストから選択して[Ok]を押した場合、この表示される行がなければ、ダイアログを経由せずに直ちに設定される。


Check color specials
Check color specials <- Option
color specials の push/pop のスタックがページ独立になっているかどうかチェックします。

ページ独立性が保たれていない場合、それを修正するプログラム dvispc.exe が dviout.exe のフォルダにあれば、DVIファイルを修正するかどうか選択できます。dvispc.exe は、そのほか color specials の background や、tpic specials の pn, sh などがあれば、それらもページ独立になるように修正します。


Change Japanese fonts
Change Japanese fonts <- Option
Windows の日本語TrueTypeフォントを使っている場合、それを別の日本語TrueTypeフォントで置き換える。
現在表示されているDVIファイルで、既に使用したTeXのフォント（フォント情報で ? となっていないもの）に対して、割り当てが出来る。


Help Menu
Help Menu <-メニューバー

Help Topics: dvioutのHelp
How to Use Help: WindowsのHelpの使い方
Use Help in English: Helpの日本語/英語の切り替え
Troubles in dviout: dvioutにおけるトラブル
Tips on dviout: dvioutにおける小ヒント集
Help TeX: TeX のソースファイルの入力支援

System Info: システム情報
Other Info
   Screen/File Info: ファイルと表示に関する情報
   Font Info: フォント情報
   Map Info: フォントマップ情報
   Buffer Info: バッファ情報
   Key table: キー機能一覧
   Parameters: パラメータ一覧
   URL of HyperTeX: URL一覧

   Anchors of HyperTeX: HyperTeXのアンカー一覧
   Source specials: source specials一覧
   Embedded Fonts: フォント埋め込み情報
   Initial.par: 埋め込まれたメモやパラメータ情報

   Character Size of TrueType: 和文TrueTypeフォントの文字幅の表

About dviout: dvioutのバージョン番号などの表示


情報表示
メニューバーのヘルプ、あるいは、ツールボタンやキー・マウス操作により以下の情報が得られます。

バージョン情報以外は、表示されたものを編集したり、ログファイルやクリップボードへのコピーすることが可能で、前の情報表示にさかのぼることもできます。

システム情報（System Info）
ファイルと表示に関する情報(Screen/File Info)
フォント情報(Font Info)
フォントマップ情報(Map Info)
バッファ情報(Buffer Info)
キー機能一覧(Key Table)
パラメータ一覧(Parameters)
パラメータの設定値の出力
当該ページのHyperTeXのURL一覧
当該ページのHyperTeXのアンカー一覧
当該ページのsource specials一覧
フォント埋め込み情報(cf. Font/Image Embedding)
initial.parの内容(cf. DVIファイルへの埋め込み）
和文TrueTypeフォントの文字の相対幅
バージョン情報(About dviout)
表示文字情報


ファイルと表示に関する情報
ファイルと表示に関する情報 Help->Other Info -> Screen/File Info
以下のものが表示されます

表示中のdviファイルのタイムスタンプ
現在のページと最後のページ（共に先頭からの通しページと実際のページ）
ページサイズ
1000 pixel の横と縦の長さ
表示の際のdpiと縮小率
テキスト表示の色数（2:白黒, 16:gray scale, 256: color + gray scale）
magnification
ルーペの大きさ、拡大率、形
ガンマ補正
矩形領域が指定されていれば、その位置とサイズ
４つの画面モードでの縮小率とガンマ補正
DVIファイルへの埋め込みがあればその数
現在のページの HyperTeX の URL と、リンク先のラベルの数（存在しなければ表示しない）
現在のページにdviout specialsがあれば、その個数
現在のページにsource specialsがあれば、その個数
現在のページにpause specialsがあれば、その個数
dvioutのバージョン番号
Windows Systemのバージョン
デフォルトのプリンタ
TeX, pTeXのバージョン


フォント情報
フォント情報 Help->Other Info->Font Info
dviの表示に使われているフォントの情報が表示されます。

A     B     C  D           E                               F
95 cmcsc10(240)*   c:\tex\fonts\pk\dpi300.gth cmcsc10.pk   PK
53 min8(300)       c:\wintex\jfms\min8.tfm ＭＳ 明朝(30x29) WinAPI

  A: dviファイルに書かれているフォント番号（通常 0 から 255 までの値）
  B: フォント名
  C: 要求されたdpiの値
  D: *  代替フォントをそのまま用いる
     !  代替フォントにより空白を空ける
     #  代替フォントにより黒い箱を描く
     +  代替フォントをスケール変換して用いる
     t  tfm ファイルを用いて空白を空ける
     ^  代替でないが、フォントの所在の記録にない
  E: 実際に使われるフォントのパス名（< で始まるものは内蔵のjfm）
     ＭＳ 明朝/C:unicode@ となっていたら、サブフォントを使っていてunicode.sfd によって unicode に変換されていること（/C）を示す。
  F: フォントの種類（これが、? の場合はまだ使っていないので未定ということを表す）
     Virtual は Virtual font であることを意味し、そこで使われるフォント情報は、インデントして下げて表示される。

なお、プレビュー画面に表示されている各文字の情報については:Q_F13。


バッファ情報
バッファ情報 Help->Other Info->Buffer Info
次のバッファに関する情報が表示されます。

Bit map buffer(-bb:)
Font file buffer(-bf:)
Expanded font buffer(-br:) 最後の # のあとの数字は異なる文字数
Subfont data buffer(サブフォントの数とデータサイズ、# の後の数字は対応づけられた *.sfd ファイルの数)
HyperTeX buffer(-href: -hname: -hbuf:)
Color BMP buffer(カラー画像とcolor specials)

DVIファイルへの取り込みによって取り込まれたファイルがあれば、そのサイズと共に表示されます。


システム情報
システム情報 HELP->System Info
dvioutが動作している環境の情報が表示されます。

dvioutのフルパス名、Windowsと関連DLLのバージョン、デフォルトのプリンタ、tex、pTeX、環境変数 TEXMFMAIN, TEXMFCNF, TEXMF, GS_LIB, PATH および TEMP, TMP（互いに異なる場合や2 byte文字を含む場合のみ）、Non-default Parameters。


キー機能一覧
キー機能一覧 Help->Other Info->Key table
各種の機能と、その機能がどのキーに割り当てられているかが表示されます。

Next Page : PgDn, ALT+J N [JN],  N,  n

とあると、次のページへの移動が、[Page Down]、ALT+J N, N, n の４つのキーに割り当てられていることを示します。

[JN] は、コマンドライン、あるいは、dviout.par でキー割り当てをこの機能に関して定義するとき、key macro や dviout special を定義するとき、あるいは他のプログラムとの連携でDDE通信によってこの機能を用いるとき、に用いる２文字をあらわします。
この表示の後に書かれたキーは、再定義により変更可能（Property Sheets->[Key]）なキーへの割り当てを示します。


パラメータ一覧
パラメータ一覧 Help->Other Info->Papameters
dviout で用いられるパラメータの一覧が表示されます。

-gbox : draw frame for picture [OFF]

とあると、-gbox が、パラメータを示す文字列で、コマンドラインや dviout.par、あるいは、Property Sheets->[REGISTRY] で用いられるものです。"draw frame for picture" が、機能を表します。これはON/OFF のトグルスイッチタイプのパラメータで、次の[OFF]は、現在の値を表しています。


パラメータの設定値の出力
Option->All Parametres ですべての設定値を、Option->Non-default Parameters でデフォルトと異なるすべてのパラメータの設定値を、読み込み可能な dviout.par の書式で出力します。

[Copy]ボタンかマウスの右ボタンを使ってクリップボードにコピーする、あるいは、ログファイルに出力する、などの方法によりファイルに落とすことができます。

一方、Option->Choose Parametersの[Save]ボタンのより、現在のパラメータを、タイトルと説明つきで保存でき、保存したものはリストから選んで、後から読み込むことができます。このパラメータファイルは、dviout のサブディレクトリ par 中に記録されます。

ファイルに落としたものは、Option->Read Parametrsで読み込むことが出来ます。特に dviout.par というファイル名で dviout.exe の存在するディレクトリに入れておくと、dviout はそれを起動時に自動的に読み込み、パラメータの値が設定されます。

ある時点でのパラメータを保存したり、パラメータの設定値の検討、コンピュータ間でパラメータをコピーする場合、共有のマシンで共通のデフォルトのパラメータの設定、などに用いることが出来ます。


表示文字情報
プレビュー画面で CTRL+SHIFT を押しながらマウスの左ボタンをクリックすると、マウスポインタの位置の文字情報が表示されます。例えば

P (50H)
Size:              25 x 25 ? in (760, 2939)-(784, 2963)
Font #68:          pcrr7t
Location:          c:t.vf
s-size/d-size:     655360/655360
location in DVI:   140364(2244CH)
line in mytext.tex:   385 - 386

上記の#68はフォント番号で、フォント情報と合わせるとその文字に対応するフォントが分かります。また最後のソーステキスト中の行番号は、source specialsが有効の時のみ表示されます。


Property Sheets
メニューバーからOption->Setup Parametersを選択するか、Change Settingsと表示されるツールボタンを押すと、Property Sheetsが現れます。dvioutの各種パラメータの変更や、起動時のパラメータの状態の設定を行うことができます。
以下のものがあります。

  [CONTENTS], [Display], [Resolution], [Font], [Font2],
  [WinJFont], [JFont2], [Key], [Search], [HyperTeX],
  [Common], [Graphic], [Printer], [Paper], [System], [REGISTRY]


[CONTENTS]
[CONTENTS] <- Property Sheets

　dvioutのプロパティー（Property Sheets)の各シートでは、dvioutの各種パラメータの値が表示されています。各シート上でこれらの値を編集できます。

1. 下部に [OK], [Cancel], [Apply] のボタンがあります。これらを使って、各シート上で編集したパラメータの値を、実行中のdvioutに反映させることができます。[Help]ボタンで、表示されているシートのパラメータの説明が得られます。

2. 各シート上の [Save], [Restore] のボタンにより、そのシート上のパラメータの値をディスク上のRegistryへ保存したり、保存した値をシート上へ読み込むことができます。保存と読み込みは、Registryのcurrent modeに関して行われます。

3. Registryに書き込んだパラメータを、dvioutの起動時に自動的に取り込むようにする設定は、[REGISTRY]のシートで行います（ただし、デフォルトでは、書き込んだパラメータは、すべて起動時に取り込まれます）。

4. [Default]のボタンがあるシートでは、これによってそのシートのパラメータの値を、dvioutのデフォルトの状態に変えることができます。

5. プロパティーシートの上のタイトルバーにある ? をマウスの左ボタンでクリックし、更に欲しい情報の場所に移動して、再びマウスの左ボタンをクリックすると、ヘルプメッセージが現れることがあります。

注意１. 各シートでの文字列入力ではエディット機能が使え、マウスの右ボタンのクリックにより、Notepadやdviout内のエディトボックスとの間で文字列をコピーするなどができます。

注意２. 一般的な解説や、インストール時の初期設定については、ヘルプの目次からご覧ください。


[Save]
[Save] <- Property Sheets
表示中のプロパティーシートのすべてのパラメータの値をRegistryのcurrent modeに保存します（既に設定されていた値に上書きされます）。ほかのシートについてはそのシートの[Save]で保存します。

ただし、[Key], [Common]の内容はcurrent modeでなく、各mode共通のところに保存されます。


[Restore]
[Restore] <- Property Sheets
Registryのcurrent modeに保存した値を、表示中のシートのパラメータのすべてに設定します。ほかのシートのパラメータの値は変わりません。

実行中のdvioutに反映させるには、さらに[Apply]ボタンを押します。


[OK]
[OK] <- Property Sheets
表示中のシートのパラメータの値を、現在のdvioutに反映させ([Apply]の機能）、プロパティーシートを抜け出ます。

ほかのシートでも編集が行われていた場合は、そのシートに移動し、そのページの変更も反映させるか（Apply)、スキップするか（Skip)、既に行った変更以外をキャンセルするか（Cancel)、が選択できます。

キャンセルを選択すると、プロパティーシートを抜け出ずに、表示中のページで止まります。


[Cancel]
[Cancel] <- Property Sheets
プロパティシート上の変更を現在のdvioutに反映させずに、抜け出ます。

ただし、[Apply]ボタンを押していた場合は、最後に[Apply]ボタンを押したとき以降に行われた変更のみがキャンセルされます。


[Apply]
[Apply] <- Property Sheets
表示中のシートのパラメータの値を、現在のdvioutに反映させます。

ほかのシートでも編集が行われていた場合は、そのシートに移動し、そのページの変更も反映させるか（Yes)、スキップするか（No)、既に行った変更以外をキャンセルするか(Cancel)、が選択できます。

キャンセルを選択すると、表示中のページで止まります。

[Apply]ボタンは、何れのシートでもパラメータの値が変更されていない場合は、無効です。

[Apply]ボタンは、日本語版では[適用(A)]などとなっています。


[Help] ボタンを押すと、その場面で適切な解説が表示されます。


[Default]
[Default] <- Property Sheets
[Default]のボタンにより、そのページのパラメータの値をdvioutのデフォルト（初期状態）に変えます。その値を実際に適用するかどうかは、そのあと[Save], [OK], [Cancel]などのどのボタンを押すかで決まります。


current mode
dvioutは、そのパラメータをディスクのRegistryに保存しておくことができます。その場所は10箇所に分かれて存在し、mode0,...,mode9と名付けられています。

現在のdvioutが対象としているmodeが、current modeで、Property Sheetsでの[Save], [Restore]はそこに対してなされます。

current modeは、Property Sheetsの[CONTENTS]のシート、および、[REGISTRY]のシートに表示されており、[REGISTRY]のシートで変更ができます（現在のパラメータは、変更されません）。

メニューバーの Option->Mode... でcurrent modeを設定すると、そのモードで[Auto Load]を定義したパラメータの値が読み込まれ、変更されます。また、起動時のコマンドパラメータ -mode: やDDE通信でもcurrent modeの変更が可能です。

起動するときのmodeは、[REGISTRY]のシートで設定でき（デフォルトは mode0）、そのパラメータの値を自動で読み込むことができます。これが起動直後のcurrent modeとなります。


[Display]
[Display] <- Property Sheets

このSheetでは、プレビュー画面の設定を行います。

Start: は起動当初、および、現在の画面（パラメータ -BMP: に対応）、1: 2: 3: 4: は Display -> View1, 2, 3, 4 に対応する画面（パラメータ -scale: に対応）を設定します。

H-scale, V-scale は、横方向、縦方向を -dpi: をもとに、何分の１に縮小するかの設定です。

reverse は反転画面の設定で、これをチェックすると、紙面が黒で、文字が白になります。

contrast は、ガンマ補正による gray scaleの調整で、この値を小さくするほど文字が濃くなります。表示装置の特性に合わせて、見易いように調整するとよいでしょう。

-t: では、一度に何ドットずつスクロールするかを設定し、これによりスクロールスピードの調整をします。

-bright: により、明るさの調整をします。最も明るい255がデフォルトです。


ガンマ補正
gray scaleの多階調の調子を補正します。

黒を0, 白を1とすると、中間の階調は0と1の間の数 x で表わせます。ガンマ補正の値が y であるとすると、x は、x^y に補正されます。よって、補正値が 0 に近い程、より黒っぽくなります。


gray scale
白黒の画像を縮小するとき、何階調かの中間の明るさ（灰色）を用いて、縮小しても見易くする方法です。

たとえば、縦横共に半分のサイズに縮小するとすれば、4ドットが1ドットに変換されますが、4ドットのうちの何ドットが ON であったかで、0 から 4 までの5段階の階調にします。

dvioutでは、最大16階調のgray scaleに変換されます。


HVscale
HVscale <- Property SheetsH-scale, V-scale は、プレビューにおいて、横方向、縦方向を何分の１に縮小するかの設定です。

Start: は起動当初、および、現在の画面、1: 2: 3: 4: は Display -> View1, 2, 3, 4 に対応する画面に対応します。


reverse Display
reverse Display <- Property Sheetsプレビュー画面の明暗を反転します。色がついている部分は、補色に変わります。

カラー画像を取り込んで表示する場合は、補色では不自然ですので、ご注意ください。

Start: は起動当初、および、現在の画面、1: 2: 3: 4: は Display -> View1, 2, 3, 4 に対応する画面に対応します。


[Resolution]
[Resolution] <- Property Sheets

-dpi: 使用するフォントの解像度を指定します。印刷の時は、プリンタの解像度に一致していなければ、正しい印刷はできません。
最も重要なパラメータで、デフォルト（300dpi）と異なるときは、必ず設定しなければなりません。プレビューでは、より小さな解像度に gray scale を用いて縮小して表示することができます（cf.[Display]）。

-mag: 通常は、dviファイルに書かれた \magstep を元に、表示・印刷を行いますが（default）、それと異なる \magstep を用いる場合に指定します。

-dpiv: 縦方向の解像度を dpi の値で指定します。横方向と解像度が同じ通常の場合は、指定する必要はありません。異なる場合のみ、その項目をチェックして、指定してください。

-e: 縦横のサイズの拡大／縮小を行います。WindowsのTrueTypeフォントのような可変サイズのフォントは、それに応じて拡大／縮小が行われます。指定した値の1000分の1倍に縦横のサイズが変換されます。

-varf: -e: によってサイズの変換が行われたとき、固定サイズのフォントに対しても、dviout 内部でスケール変換を行って、正しいサイズに変換するよう指定することができます。この場合、ある程度のスムージングは行いますが、文字品質は悪くなります。


１インチあたりのドット数（dots per inch）のことで、解像度を表わす。


[Font]
[Font] <- Property Sheets

フォントに関する基本設定を行います。

[Save]で設定値をRegistryに保存し、[Apply]で現在のセッションに適応します。Registryにセーブしたものを起動時のデフォルトにするには、[REGISTRY]のシートで、対応するすべてのオプションを[Auto Load]でチェックして、[REGISTRY]のシートで[Save]します。

-TEXROOT: TEXPK や TEXFONTSで ^r という文字列に代入される文字列を指定します。

-TEXPK: 欧文のPKフォント、欧文TrueTypeフォント、和文のJX4フォーマットのフォントや和文のjfmファイルの所在を示す最も基本的なdvioutのパラメータで、必ず設定が必要です。

注意：TrueTypeフォントを使用しない欧文のtfmファイルが出来るだけこの指定に該当しないようにしてください。
具体的には、和文のjfmファイルの指定に使われたディレクトリに、欧文のtfmファイルが存在しないようにしてください。そうなっていない場合は、新たに別のディレクトリを作って、そこに和文のjfmファイルのみをコピーして、そこを -TEXPK: で指定してください。

-TEXPK の設定例を参照してください。また、[Guess]によるフォントの所在の推測設定の機能を用いると、-TEXROOT: -TEXPK: -L:（さらに、場合によっては -F:）の設定がほぼ自動的になされます。

-TEXFONTS: PKフォントは存在しないがtfmファイルが存在する場合にそこを正しい大きさの空白で置き換える、などを行う場合、-TEXFONTS:によってtfmファイルの存在するディレクトリ名を指定します。

和文フォントについても同様な空白での置き換えをするときは、jfmファイルの所在も合わせて指定します。

例  -TEXROOT:^T\fonts
    -TEXPK:^r\pk\^s.^dpk;^r\public\pk\^s.^dpk;^r\ptex\jfm\^s.tfm
    -TEXFONTS:^r\\tmf;^r\\jfm

-F の指定では -TEXPK: に基づいてフォントを探しても見つからない場合の代替の対処法を個々に定めます（存在しないフォントへの対処）。

-FB:(substitution) -F:とあわせて用いて、代替のやり方を定めます。
  replace     -F:で代替されたフォントを用いる。

  adjust size replaceと同じであるが、代替したフォントのdpiが異なっていれば、サイズの調整を行う。dpiのみ異なるフォントならば、正しいサイズとなる。

  blank       -F:で代替されたフォントのメトリック情報を元に空白を空ける。dpiのみ異なる代替フォントならば、空きは正しいサイズとなる。

  black box   -F:で代替されたフォントのメトリック情報を元に、黒の箱を置く。

ただし、フォントメトリックファイル(tfmファイル、または、jfmファイル）に代替された場合は、-FB: の如何にかかわらす空白を空ける（black boxが指定された場合のみ黒の箱を置く）。

 例  -F:.300
     -FB: adjust size
300dpiの解像度のフォントのみを揃え、それを拡大・縮小して用いる場合の設定。

-L:(cut longname)8文字以上のフォント名の切り詰め方法を定める（cf. Q_F4: lcircle10の場合）。
  no part     切り詰めない（lcircle10）
  last part   最後をカット（lcircle1）
  middle part 中央をカット（lcirle10）

フォントのチェック:右下のコンボボックスでフォントを選んで[Check]ボタンを押すことにより、-TEXROOT: -TEXPK: などの設定が正しいかどうかチェックできます。


存在しないフォントへの対処

dvioutがフォントを見つけられないのでなくて、必要なフォントが存在しない場合、METAFONTで作成するのが正しい方法ですが（cf.フォントの自動生成）、dvioutでは幾つかの方法で切り抜けることができます。典型的な方法を述べます。

1. 存在しない文字の部分を空白にする 。
次の設定では、-dpi:で設定した解像度（デフォルトは300dpi）のフォント、あるいは、フォントメトリックファイルが存在する場合には、正しいサイズの空きが取られ、それらが見つからない場合は、必ずしも正しくないサイズの空白になります。

-F:.!=.;.t=.;cmr10.!
-FB:blank

さらに、-TEXFONTS: には、フォントメトリックファイルの存在するディレクトリを設定します。

注意:-FB:black box を設定すると、存在しない部分の文字は、黒の箱で示されます。

注意:上で、! は、-dpi: で設定した解像度を表しますが、直接解像度を指定することもできます。

2. できるだけ本来のものに近くする 。
-dpi:で設定した解像度のフォントが存在する場合、それを拡大／縮小して正しいサイズに置き換えて使い、それが存在しない場合は、探していたフォントと同じ解像度の cmr10 のフォントで代替し、それも存在しない場合は、-dpi:で設定した解像度の cmr10 のフォントをスケール変換して用いる。

-F:.!=.;cmr10.=.;cmr10.!
-FB:adjust size

3. 個々のフォントに対して個別に対処する。
-F:および -FB:の項を参照してください（[Font]）。


フォントグリフファイル
各文字のビットマップデータを納めたファイル。

dvioutが扱うことのできる欧文フォントのグリフファイルの形式は、PK, PXL1001, PXL1002, PXL1003 です（GFを除く）。これらは次の文字との標準の空きのメトリック情報を持っているため、これらのフォントに対して dvioutは、欧文のフォントメトリックファイルを必要としません。

これらのうち、PKフォントファイルが広く用いられていて、通常cmr10.300pkなどというファイル名になっています。cmr10がフォント名で、300が解像度（dpi）の値です。MS-DOSでは、ファイル名の長さの制限から、300というサブディレクトリを作って、cmr10.pkというファイル名にする、などという方法をとることが多いようです。

そのほか欧文TrueTypeフォントも使用可能です。CMフォントなどもTeX用の欧文TrueTypeフォントで代替できますが、各種存在しますので品質や互換性の点に注意してください。

アスキーのpTeXの和文フォントに対しては、dvioutでは標準のJXL4フォントのほか、MS Windowsの和文TrueTypeフォントや、独自の形式のビットマップファイルが使用できます。JXL4フォント以外の和文フォントを使用する場合は、和文のフォントメトリックファイル（jfmファイル）が必要です。


フォントメトリックファイル
各文字の大きさや次の文字との標準の空きの情報などの文字を配置する情報が書かれたファイル。

文字のビットマップデータは含まず、解像度(dpi)に依存しない。

欧文の場合はtfmファイル、アスキーのpTeXの和文フォントでは、jfmファイルと呼ばれるが、拡張子は共に tfm である。


tfmファイル
欧文のフォントメトリックファイルのことで、文字の配置や大きさの情報が書かれている。cmr10.tfm, lcirlcle10.tfm などのファイルがそれである。

欧文のPKフォントにはこのような配置や大きさの情報が書かれているので、dvioutは通常tfmファイルを必要としない。欧文のTrueType Fontを使うときは必要なので、そのときはそれを -TEXPK: に指定する。

欧文TrueTypeフォントを使うため[WinJFont]で対応を定義したものを除いて、欧文のtfmファイルは -TEXPK:で指定しないのが望ましい。

アスキーのpTeXで使われる和文のjfmファイル（min10.tfm, goth10.tfm）も拡張子がtfm となっているので注意（こちらは、-TEXPK: に指定する）。


jfmファイル
アスキーのpTeXで使われる和文のフォントメトリックファイル。

min10.tfm, goth10.tfm などが横書き用、tmin10.tfm. tgoth10.tfmなどが縦書き用のjfmファイル。これらに対応するフォントをWindows98/NTのTrueType Fontsで代用する場合は、これらのjfmファイルを-TEXPK:で指定する（Property Sheets->[Font]）。

TrueType和文プロポーショナルフォントのjfmファイルは、付属のプログラムを使って例えば以下のようして作成できる。

propw -o=mspmin.tfm "#ＭＳ Ｐ明朝"


FLIフォントライブラリ
dvioutは、emTeXのFLI形式のフォントライブラリに対応しています。

FLI形式のフォントライブラリは j_0.fli, lj_h.fli,...,lj_5b.fli,lj_sli.fli などの名前になっています。

-TEXPK: ではこの可変部分を ^f で表現し、^f を置換する文字列を -TEXFLI: に列挙して指定します。

例えば上記のフォントライブラリファイルがC:\font というディレクトリ上にあるときには、
次のように設定します。

-TEXPK:c:\font\lj_^f.fli^g^s;...(その他の検索パス)
-TEXFLI:0;h;1;2;3;4;5a;5b;sli

^f の含まれるフォント指定だけをFLI形式のライブラリと見なしますので、必ず1個だけ ^f が含まれるように設定してください。

なお、-L: オプションは、2（フォント名をカットしない）を設定し、フォント名の省略を行わないようにしてください。


欧文TrueTypeフォント

-TEXPK: で欧文TrueTypeフォントを使用するTeXのフォントのtfmファイルを指定すると、Property Sheets->[WinJFont]の設定に従ってCM-TrueType Fontなどの欧文のTrueTypeフォントが使用できます。

TeXのフォント名（[WinJFont]のjfm/tfmの欄）の edefaultは特別な意味を持ち、デフォルトの指定を表します。対応する欧文TrueTypeフォントはダミーなので何を設定してもかまいません。
このとき、TeXのフォント名とTrueTypeのフォント名は同じであるとみなされますが、対応を -ftt: に定義することもできます。別に個々に定義したものがあれば、それが優先されます。

TeX用のTrueTypeフォントが幾つか存在しますが、互いにコードの互換性がないものが存在しています。[WinJFont]のcode typeでコード変換を定義しますが、正常に使えない場合はVirtual fontで対応してください（cf. Q_F14）。
---
なお、旧来のように -TEXPK: で欧文TrueTypeフォント（拡張子が、ttf  となっている）を直接指定することにより、CM-TrueType Fontなどの欧文のTrueTypeフォントが使用できますが、正常に使えない場合もあります。文字品質の点からもこちらのやり方は避けた方がよいでしょう。

旧来の方法で欧文のTrueTypeフォントを使う場合、文字送り幅を得るためにパラメータ-TEXFONTS:または、環境変数 TEXFONTS をもとに、対応するtfmファイルを探します。

該当するtfmファイルが見つからないと警告を発して TrueTypeフォントのメトリック情報のみを使って出力を続けますが、この場合、TrueTypeフォントのメトリック情報の精度の問題から文字の位置などがずれてしまうことがあります。

旧来の方法の場合、-ttf: によって、欧文TrueTypeフォントの使用の許可／禁止などをコントロールします。-ttf: の値以上のサイズのフォントは詳細モードで文字を作成しません。ただし、1は全て詳細モードで作成、0は欧文TrueTypeフォント不使用です。

例 -TEXPK:c:\windows\fonts\^s.ttf;c:\fonts\^s.^dpk;c:\fonts\jfm\^s.tfm
   -TEXFONTS:c:\fonts\tfm;c:\fonts\jfm
   -ttf:1


1 inch = 25.4 mm


GTHフォントライブラリ
MS-DOS版 dviout/dviprt で用いられたフォントライブラリで、多くのPKフォントなどを一つのファイルにまとめたもの。拡張子には、普通gth が用いられます。

たとえば、c:\tex\fonts\pk300.gth というGTHファイルに、300dpi の cmr10.pk というPKフォントが入っていて、それを -TEXPK: で指定するには、以下のようにします。

-TEXPK:c:\tex\fonts\pk^d.gth^g^s.pk

ただし、上記の指定で .gthは、デフォルトとして自動的に補われますので、省略可能です。

通常どおり、; で区切って他のフォント指定と併用できます。前から見ていって、最初に見つかったものが採用されます。


FARフォントライブラリ
アスキーの日本語MicroTeXで用いられたフォントライブラリ。複数のPKフォントやPXLフォントをまとめて一つのファイルにしたもので、拡張子は far となっています。


フォントのチェック
-TEXROOT:, -TEXPK: などの設定が正しいかどうかのチェックを行います（Property Sheets->[Font]）。

コンボボックスには、cmr10, line10, lcircle10, msam10, eufm10, min10, tmin10 のフォントのリストがあります。それを選択することにより、（あるいは、直接入力することにより、任意のフォントが）正しく指定されているかのチェックができます。
チェックするフォントの解像度（dpi）の指定も可能です。

-TEXPK: の設定ミスで「フォントが見つからない」というエラーが起き、dviファイルが表示できない場合に利用すると便利です。


cmr10
Computer Modern Font Roman 10 point
TeXで、従来からもっとも普通に用いられるフォント


line10
LaTeXのフォントで、斜めの線を描くのに使われる。


msam10
AMSTeX および AMSLaTeX において標準的に用いられる記号の追加フォント


lcircle10
LaTeXのフォント。円などの曲線を描くのに使う。
フォント名が８文字を越えるので、-L: の設定に注意。


eufm10
Euler Fraktur Medium 10 point
AMSTeX や AMSLaTeX で標準で用いられるFraktur（ドイツ文字）フォント


min10
アスキーpTeXの横書き用の明朝10 pointの和文フォント（最もよく用いられる日本語のフォント）。


tmin10
アスキーpTeXの縦書き用の明朝10 pointの和文フォント（縦書で、最もよく用いられる日本語のフォント）。


-F の指定
指定は、<ss>.<ds>=<so>.<do> の形式で、 ^s が <so> に ^d が <do> にマッチすると、それぞれ <ss> と <ds> に変更されて-TEXPK:に基づいて再度サーチします。これは ; で区切って複数個指定でき、見つかるまで先頭から順にこの操作がなされます。

<ss>, <so> にはフォント名、<ds>, <do> には解像度（dpi）を指定しますが、次の文字列を用いた場合は特別の意味を持ちます。

  <so>=空     すべてのフォント名にマッチ
  <do>=空     すべての解像度にマッチ
  <ss>=空     元のフォント名（^s）を表わす
  <ds>=空     元の解像度（^d）を表わす
  <ds>=!      デフォルトの解像度を表わす
  <ds>=t      拡張子をtfmに変えたフォントメトリックファイルを示す。この場合は、-TEXPK:でなくて-TEXFONTS:に基づいてフォントメトリックファイルを探す。

例  -F:cmr10.=.   ^sをcmr10に置き換える（^dは元のまま）

   -F:.t=.      元のフォントに対応するフォントメトリックファイルを -TEXFONTS: で指定されたディレクトリから探す（単に .tとしても同じ）。

   -F:.!=.;cmr10.=.;cmr10.!    ^s が cmcsc10 で ^d が 320 であり、デフォルトの解像度が 300 であったとします。このとき、(cmcsc10, 320)は、(cmcsc10,300)、(cmr10,320)、(cmr10.300)と順に変更されて検索されます。
最後の部分のみ一部省略できて、上記では =. が補われて解釈されます。（cf.存在しないフォントへの対処）


[Font]のProperty Sheetで[Guess]ボタンを押すと、-TEXROOT:, -TEXPK: の推測が行われ、Property Sheet上に設定されます。推測なので、さらに修正が必要なことがあります。[OK], [Apply], [Save]などのボタンを押すことにより、この推測を適応することができます。

欧文PKフォント、和文jxl4フォント、和文jfmファイル、GTHフォントライブラリのみに対応しています。フォントが存在しない場合は、推測はできません。また、ネットワークドライブは、無視されます。

解像度（cf.-dpi:）が正しく設定されている必要があります。

複数箇所にフォントが見つかった場合は、どれを使うか尋ねられます。

詳しくは、[Guess]の仕様を参照してください。

推測を行わず、デフォルト値を設定することも選択出来ます。


[Guess]の仕様

-TEXPK: -TEXROOT: などの設定のためのフォントの所在の推定は、以下のようになされます。

1. 探すべきディスクドライブまたはディレクトリ（ルートディレクトリからの適当なディレクトリまでのパス）、欧文フォント名、和文フォント名、解像度の４つの情報を元に推定します。これらのデフォルトは、順に以下のようになっています（変更については、最後を部分をご覧ください）。

・リムーバブルでない全てのルートドライブ（例 C: D: など）

・cmr10, lcircle10, dcr10, ecr10, msam10, eufm10

・min10, tmin10

・設定されている -dpi: の値

なお、MikTeXがインストールされていると判断されるときは、以下の推定を行わないMikTeX用の設定にするかどうか選択するダイアログが表示されます。

2. 欧文フォントは、探すべきディレクトリ、およびそれ以下の全てのサブディレクトリで、与えた解像度、およびその1.2倍の解像度のものを検索します。
たとえば、cmr10 で解像度が300dpiのときは、cmr10.pk, cmr10.300pk, cmr10.360pk を探します。ただし、cmr10.pk の場合は、パス名に 300 あるいは 360 という文字列（その前後の文字は、数字であってはなりません）が含まれていなければなりません。

ただし、lcircle10, lcirclew10 のときは、フォント名をそれぞれ lcircle1, lcirle10 あるいは、lcirclew, lcirew10 に変えたものも探します。

3. 和文フォントも同様にして、対応するJXL4フォント、および、jfmファイルを探します。
min10で300dpiのときは、min10.pxl（このときは、パス名に1500または1800が含まれている必要があります）, min10.1500pxl, min10.1800pxl, min10.tfmを探します。

注意：同じ解像度のフォントが２ヶ所で見つかったときは、どちらを使うか、ダイアログが表示されてユーザの判断が求められます。ただし、和文のフォントファイルで、JXL4フォントとjfmファイルの両方が見つかったときは、前者が優先されます。

4. 拡張子gthをもつファイルで、ファイル名に解像度の数字が含まれるものは見つかったGTHフォントライブラリファイルとして記録しておきます。

5. 見つかったフォントのパスのフォント名の部分を全て ^s で置き換えます。

6. 与えられた解像度とその1.2倍の解像度のものが共に見つかったフォント（GTH、jfmファイルは除く）に対しては、探されたパスを先頭から比較して、異なっている部分が解像度を表す文字列に対応していて、それより前の部分が一致していれば、その文字列を ^d （jxl4フォントのときは、^l）に置き換えます。
これは、可能な限り繰り返して行われます。たとえば、

C:\tex\pk300\cmr10.300pk -> C:\tex\pk300\^s,^dpk
C:\tex\pk300\cmr10.360pk -> C:\tex\pk300\^s.^dpk

あるいは

C:\tex\pk300\cmr10.300pk -> C:\tex\pk^d\^s.^dpk
C:\tex\pk360\cmr10.360pk -> C:\tex\pk^d\^s.^dpk

7. 上記6で一度も変換が行われなかった欧文フォントのパス、あるいは、和文のJXL4フォントのパスに対し、解像度の文字列を ^d （または、^l）で置き換えます。
ただし、パス名中に２ヶ所以上に解像度の文字列が含まれていれば、最後に合致する部分のみを置き換えます。

たとえば、C:\tex\pk300\cmr10.300pk が探され、360dpiのcmr10のフォントが見つからなかった場合は、C:\tex\pk300\^s.^dpkとなります。

なお、この段階では、フォント名は既に ^s で置き換えられているので、フォント名中に解像度の文字列と合致するものが含まれていても、正常に処理されます。

8. 以上の処理を行って同一のパス名が生じれば、重複したものを消去します。

9. 最初の欧文フォントが与えられた解像度で見つからなかった場合、それがTrueTypeフォントとしてシステムに登録されていて、しかも環境変数TEXMFMAINまたはTEXMFが存在すれば、パス名を %TEXMFMAIN%\fonts\\^s.tfm または%TEXMF%\fonts\\^s.tfmとする。

10. 最初の欧文フォントの与えられた解像度に対して検索されたパス名に注目し、その先頭部分を他の求まったパス名の全ての先頭部分と比較し、どこまでを共通部分にすれば、-TEXROOT: と -TEXPK: に定義する文字列の長さの和が最小になるかを調べて、共通部分の設定を決めます。
その共通部分を -TEXROOT: に設定し、それを先頭に含むパス名は、その部分を ^rで置き換えます。
環境変数TEXMFMAINまたはTEXMFが存在していて、-TEXROOT:の先頭部分がそれと合致すれば、-TEXROOT:のその部分を ^Tで置き換えます。

11. 次に再び、*.^dpk に合致するファイル（^dを、解像度にあたる文字列に置き換えたファイル）が、探すべきディレクトリ以下のディレクトリに存在するかどうか調べます。
存在するディレクトリがあれば、そのディレクトリ名に^s.^dpkを付加し、可能なら先頭部分の ^r による置き換えを行います。
この結果、10で得られているもの以外のものが見つかれば、探されたフォントファイルのパス名を表示して、上のように置き換えたものもサーチパスに含めるかどうか、ダイアログでユーザの判断を求めます。含めない場合は、次のディレクトリを探します。
ここでは、6において２ヶ所以上 ^d  の置き換えを行って、同じパス名に到達したものがあれば、それとの比較も正しく行って、重複を避けます。

12. ^dという文字列を含む欧文フォントのパス名で、最後が .tfm でないものが \public\cm\, \public\latex\, \ams\symbols\, \ams\extracm\ のいずれかを含んでいれば、その部分を \ に置き変えます。但し、一つのパス名につき置き換えは高々一回です。

-TEXPK: において kpathsearch の \\ と同様の意味でこの置き換えられたフォントのパス名に合致するパス名は重複するので削除します。

13. 以上のようにして得られたパス名を、順に -TEXPK: に設定します。さらに、GTHファイルに対応するパス名があれば、それも設定します。

14. 最初の欧文フォントに対応するパス名が ^r\...\texmf\fonts\pk\... となっていたら、Virtual font用に ^r\...\texmf\vf\\^s.vf というパスを加えます。

15. lcircle1（あるいは、lcirclew）が見つかれば -F: に
     lcircle1.=lcircle10.;lcirclew.=lcirclew10.
が、lcirle10（あるいは、lcirew10）が見つかれば、-F: に
     lcirle10.=lcircle10.;lcirew10.=lcirclew10.
が設定されます。両方見つかれば、合わせたものが設定されます。
GTHファイルが -TEXPK: に設定された場合は、両者が見つかった、とみなします。

16. -TEXPK: でjfmファイルが設定された場合（ファイル名は ^s.tfm）、それに欧文のtfmファイルが該当しないかどうか、チェックを行います。また、-L: は、長いフォント名をそのまま用いるように設定されます。

注意: 推測に使われるデフォルトの、解像度以外の部分は、dviout.exe の存在するディレクトリの dviout.gss というファイルで以下のように指定できます（それが存在しなければデフォルト）。

３つの設定を順に書きます。複数の指定は、; で区切ります。
各項目は省略可能ですが、欧文フォントの指定を省略する場合は、その後の和文フォントの指定も省略しなければなりません（省略すると、デフォルトになる）。
# で始まる行は無視されます。

たとえば、

#drive
C:\ptex;D:
#pk fonts
cmr10;lcircle10;ecr10
#jxl4/jfm fonts
min10;goth10

あるいは、

cmr10;msam10;eufm10

あるいは、

C:\tex;C:\ptex

なお、最初の欧文フォントは特別の意味をもつことに注意してください（cf. 9）

注意：MS-DOSでは８文字以上の名前のフォントは、切り詰めて８文字にしたファイルにしていました。Windows95/NT では、長いファイル名が使えますので、それを用いることが望まれます。
よって、推測機能では、-F:を用いて、よく使われるLaTeXのlcircle10, lcirclew10 のみのサポートとしています。-L:の設定はデフォルトとします。


[Font2]
[Font2] <- Property Sheets

-gen: dviout が（-F:による代替も含めて）フォントを見つけられなかったとき、METAFONTを起動して不足しているフォントを作成し、格納して使用することが可能です。これらの方法を記述したテンプレートファイルを-gen:で指定します。指定がない場合、フォントの自動生成は行いません。

-ftt: TeXのフォントに対し、使用するTrueTypeフォントの対応付けを書いたファイルを指定する。[WinJFont]での対応付けに先だってこの指定での変換がなされる。

-TEXSUBF: サブフォントのためのSFDファイル *.sfd の所在を指定する。

-TEXPKD: PKフォントファイルの代わりに、それのインデックスファイルを作成してそれを -TEXPK: で指定した場合、実際のPKフォントの所在を示すルートからのディレクトリを記述します。
大きなサイズのPKフォント、あるいは、それを多数扱う場合（たとえば、NTTJTeX）に、MS-DOS で用いられました。

-TEXFLI: emTeX のFLIフォントライブラリを用いるとき、フォントライブラリの名前の可変部を -TEXPK: の ^f で表わし、この可変部を置換する文字列を -TEXFLI: に列挙して指定します。

-A: dvioutがフォントファイルを探すときの解像度の許容範囲を指定します。

-ttf: 欧文TrueTypeフォントの使用に関し、その許可／禁止、あるいは、ある解像度未満は欧文TrueTypeフォントを使わないことを指定します。これの変更を全てのフォントに対して有効にするには、[Flush]を押して過去使用したフォントの記録を削除する必要があります。

-c: dviファイルを作成した際、使用した tfmファイルのチェックサムIDがdviファイルに記録されますが、それと実際にdvioutで使用するPKフォントのIDとが一致しているかどうかチェックします。

-Fkeep: よく使うフォントの所在の記録を残し、dvioutの起動を高速化します。

[Flush]: よく使うフォントの所在の記録を消去します。

-virtual: Virtual font使用の ON/OFF。

-Fod: フォントの所在を起動時に解決しない。


フォントの自動生成

基本的なフォント作成手順/環境は、あらかじめフォント作成のテンプレートファイルに設定し、それを -gen: で指定する必要があります。dvioutは、テンプレートファイルの設定に従って必要なフォントの名前やサイズなどのデータを挿入したバッチファイルを作成し、実行します。

当然、メタフォントが既にインストールされていて、正常に動作している環境が必要です(cf. Q_F6)。

また、METAFONTソースが見つからない、あるいは設定パラメータにミスがあった場合など、自動生成できなかったフォントについては、必要なルーチンをまとめて別のバッチファイルに出力して手作業で必要なフォントの生成ができるようにしています。

template というテンプレートファイルのサンプルを付けてありますので、それを参照してください。書式は以下の通りです。

ただし、%2ndに属する１行のみのテンプレートファイルに対応する場合は、-gen: にテンプレートファイル名でなく、先頭に ` を付けて直接内容を書くことができます。

1文字目が # で始まる行はコメント文であり、バッチファイルには出力されません。ただし、1つだけ例外があります。2文字目が ! の場合は、そのまま出力されます。

# この文は出力されない
#! この行は出力される。

テンプレートファイルは、4つの領域からなります。各領域は、各々1文字目が % で始まる、3種類の行

%1st
%2nd
%3rd

で区切られます。

%1st 行より前は、特殊なパラメータを設定する領域です。この領域で設定できるパラメータは4つあります。

auto=no : 子プロセスで自動的にフォント生成を行なうのを禁止し、gen_font で指定した名前のバッチファイルのみ生成します。

extra_size=300 : dvioutの実行で足りないフォントが見つかった時に、別の解像度のフォントも作りたい場合に、作成したいdpi値を設定します。この値は、^e の計算に使用されます。

gen_tmp= : 子プロセスに用いるバッチファイルの名前をフルパス名で指定します。環境変数 TMP あるいは TEMP が示すディレクトリ（それが存在しなければ、カレントディレクトリ）の gen_tmp.bat がデフォルトです。

gen_font= : 子プロセスでは生成できなかったフォントを作成するためのバッチファイル名をフルパス名で設定します。デフォルトは、gen_font.bat です。

mode_name= : dpi値とMETAFONTのmode名の対応関係を設定します。書式は、

mode_name=<dpi値>:<mode名>

です。例えば、mode_name=300:CanonCX は、300dpiの場合は CanonCX というmode名を対応させることを表わします。
このmode_name の行は、テンプレートファイルの中に何回でも書けますが、extra_size= の行よりは後に書いてください。

2番目の %1st と %2nd の間には、echo offのようなバッチファイルの前処理コマンドを入れておきます。また、4番目の %3rd 以降には、エラー処理などの後処理コマンドを入れておきます。

3番目の、%2nd と %3rd の間の領域が、実際にフォントを作成するためのルーチンです。この領域では、^ + 英小文字(例 ^s )を使うことで、必要な情報を挿入することができます。

^s は、見つからなかったフォント名に置換されます。
^m は、そのフォントの倍率に置換されます。
^d は、そのフォントのサイズ(dpi値x倍率)に置換されます。
^D は、dpi値 に置換されます。
^M は、^d/^D を分数の形で表します。たとえば、^d が1500, ^D が600 のとき、^M は 2+300/600 となります。
^n は、dpi値に対応したmode名に置換されます。
^N は、extra_size= で設定されたdpi値に対応するmode名に置換されます。
^e は、1番目の領域で設定された dpi値x倍率に置換されます。

例えば、dvioutの実行で、足りないフォントが見つかった時に、ついでに別の解像度用のフォントも作ってしまいたい場合に、1番目の領域で extra_size=360 のように書いて作成したいdpi値を設定しておくわけです。

^ を含む文字列をバッチファイルに出力したい場合は、^^ と2つ続けてください。例えば、^^s とすれば、置換は行なわれず、^s という文字列が出力されます。

フォント作成のテンプレートの簡単な例を挙げておきます。


フォント作成のテンプレート

例1：kpathsea の mktexpk または MakeTeXPK を使用した例
%1st
%2nd
mktexpk ^s ^d ^D ^M
%3rd

これは、mode名は、texmf.cnfに定義されているMAKETEXPK_MODE_...を用いる場合で、mktexpkにパスが通っている必要があります。場合によっては、mktexpkを含む行は

mktexpk --dpi ^d --bdpi ^D --mag ^M ^s

のように書く必要があります。
mktexpk の代わりに MakeTeXPK を用いる場合は、上の mktexpk を MakeTeXPK に書き直してください。
mode名を定義して用いる場合は、例2のように書いて、%2ndの後を
mktexpk ^s ^d ^D ^M ^n
または
mktexpk --dpi ^d --bdpi ^D --mag ^M --mfmode ^n ^s
とするか、^nのところに、直接mode名を書きます（cf. 付属の utility\template.kp0, utility\template.kps）。
フォント生成コマンドが%2ndに属する１行のみの場合は、テンプレートファイルを用いなくても、-gen: に例えば

`mktexpk ^s ^d ^D ^M cx

のように先頭に ` をつけ、直接コマンドを書くことができます。

例2
###########################################
mode_name=118:bitgraph
mode_name=300:CanonCX
#
%1st
#
echo off
rem
#
%2nd
#
virmf &cmplain :=^n; mag:=^m; input ^s
gftopk ^s.^dgf ^s.pk
rem
#
%3rd
#
echo Done!
############################################

cmr10 scaled 5000 というフォントが見つからなかった場合、次のような内容の gen_tmp.bat が出力され、子プロセスで実行されます。

echo off
rem
virmf &cmplain \mode:=bitgraph; mag:=5.000000; input cmr10
gftopk cmr10.590gf cmr10.pk
rem
echo Done!

子プロセスで cmr10 scaled 5000 というフォントの生成に失敗した場合には、次のような内容 gen_font.bat が出力されます。

echo off
rem
virmf &cmplain \mode:=bitgraph; mag:=5.000000; input cmr10
gftopk cmr10.590gf cmr10.pk
rem
echo Done!


[Flush]
よく使うフォントの所在の記録（dvioutの起動を高速化するために用いる）を消去します(cf.-Fkeep:)。

注意: -TEXPK: や -TEXROOT: を変更した場合、記録のフォーマットのバージョンが異なる場合、フォントファイルを移動した場合などは、自動的に記録が消去されます。よって、[Flush]ボタンを押す必要は少ないでしょう。-ttf: [WinJFont]での欧文フォントの設定を変えた場合は、[Flush]を使う必要があることがあります。


Virtual font

PSフォントをはじめとする様々な形式のフォントを、TeXの標準的なフォントと同等に扱えるようにするため仮想的に用いられるフォント。
通常、デバイスドライバ(dviware)は、VFファイル（拡張子vf, Omegaの場合はovf）の情報に従ってvirtual fontの各文字（グリフ）を実際のフォントに置き換えます。

dvioutでvirtual fontを使用する際は、-virtual:（Property Sheets->[Font2]）をONにした上で、-TEXPK:（Property Sheets->[Font]）にVFファイル（^s.vf あるいは ^s.ovf）およびVFファイルから参照されるフォントの処在を指定しておきます（cf. Q_F14）。

VFファイルから参照されるフォントは、フォント情報（Help->Font Info）の中でインデント付きで表示されます。

これらのフォントを、フォントの自動生成機能（-gen:）を使って自動生成することも可能です。

PSNFSS（LaTeXでPSフォントを標準的に使えるようにするパッケージ）を利用する際は、ps2pk, gsftopkに対応したmktexpkコマンドを-gen:に登録しておくと良いでしょう。生成されるフォントの所在は、-TEXPK:で示されていなければなりません。


[WinJFont]
[WinJFont] <- Property Sheets

-TEXPK: で拡張子 tfm のファイルが検索されたTeXのフォントに対して、Windowsのシステムに登録されたどのフォントを用いるかを設定します。

まず下の jfm/tfm で TeX で使われるフォント名を指定し、次に上の TrueTypeフォント を選んで[Define]を押す、という順序で行います。

Windowsフォント: 用いるフォントがコンボボックスに表示されます（最大256個）。

Japanese TT: 追加するTrueType等のフォントが和文や中国語等のものか欧文のものかを指定します。

[Add Font] ボタンを押したときに表示されるWindowsフォントから選んで、用いるフォントのリストに追加します。

[Change Font] Windowsフォントのコンボボックスに表示されているフォントを、ボタンを押したとき表示されるフォントから選択して交換します。

H scale: フォントの横方向の大きさです（1000がデフォルト）。

V scale: フォントの縦方向の大きさです（1000がデフォルト）。

code type: 欧文TrueTypeフォントを用いるときに、文字コードの変換方法を選択します。

jfm/tfm: TeXで用いるフォント名を指定します。ただし、和文フォントのときは、フォント名から最後の数字を除いたもの（min, tmin, goth, tgothなど）を書きます。直接入力して[Define]を押すことにより、追加できます（最大256個）。
なお、edefaultという名前で設定したものがあると、対応を定義していないフォントが現れた場合に、それと同じ名前のTrueTypeフォントがあればそれを用います。この場合、対応するTeXのフォントには何を設定しても同じなので、適当に設定しておきます。ただし、スケール変換などの設定は有効です。
defaultという名前で設定したものがあると、対応するWindowsフォントが見つからない横書き和文フォントに（Warningメッセージが出ますが）、その設定を用います。縦書きの場合は、tdefaultという名前で設定します。

平体／長体, 斜体, 向き: 選択したTeXの和文フォントに対して設定します。向きは、横書き用のフォントであるか、縦書き用のフォントであるかを指定します。

H position: 選択したTeXのフォントの横方向の位置調整です（1000がほぼ一文字の横サイズです）。

V position: 選択したTeXのフォントの縦方向の位置調整です（1000がほぼ一文字の縦サイズです）。

[Define] 現在表示されているTeXのフォントに、表示されているWindowsフォントを割り当てます。

[Remove] 現在表示されているTeXのフォントを、登録から削ります（表示されているWindowsフォントがそれに対応している場合）。表示されているWindowsフォントに対応するTeXのフォントが存在しない場合は、Windowsフォントが、リストから削除されます。実際に削除を行う前に確認のためのダイアログボックスが出ますので、どちらであるか分かります。

注意: サイズの調整の H scale:  V scale: は、Windowsフォントのリストの一項目につき一種類のみです。同じWindowsフォントでサイズ調整の異なったものを用いるときは、[Add Font] で、同じWindowsフォントを複数項目作成します。

注意: 欧文TrueType Fontの設定を変えた場合は、[Font2]の[Flush]ボタンを押して、従来の設定のキャッシュを必ず消去してください。

注意: ここで定義したものを起動時に自動設定するには、[Save]ボタンを押します。
-vfn: の自動読み込みが解除されていなければ、このままで OK ですが、解除されている場合は、さらに[REGISTRY]のシートに移って、-vfn: の項を自動読み込みに追加します（[REGISTRY] のシートで、-vfn: に + を設定して[Save]を押す）。


[WinJFont]のTrueTypeフォント
WindowsがサポートしているTrueType等のフォントのリストです。変更や追加は、[Change Font]や、[Add Font]で行います。256個まで設定できます。


[WinJFont]のH scale
リストから選んで表示されているWindowsフォントの横（縦書きフォントは縦）方向の大きさの調整をします。1000がデフォルトの値です。

同じWindowsフォントでこれの値が異なるものを用いるときは、[Add Font]で、そのフォントを複数個リストに用意します。


[WinJFont]のV scale
リストから選んで表示されているWindowsフォントの縦（縦書きフォントは横）方向の大きさの調整をします。1000がデフォルトの値です。

同じWindowsフォントでこれの値が異なるものを用いるときは、[Add Font]で、そのフォントを複数個リストに用意します。


[WinJFont]の[Define]
TeXで使われるフォントと、それに用いるWindowsのフォントの対応（の一つ）を、表示されているように定義します。

複数個のフォントに対し新たに対応を定義するときは、複数回[Define]を押すことになります。


[WinJFont]の[Remove]
表示されているTeXのフォント(jfm/tfm)が、表示されているWindowsのフォントに対応づけられているるとき、[Remove]によって、この対応が削除され、表示されているTeXのフォントがリストから消えます。

表示されているWindowsのフォントが、TeXのフォント(jfm/tfm)のいずれにも対応していない場合、[Remove]によってWindowsのフォントがリストから消えます。

上のいずれの場合も、リストから消すものが表示され、消してよいかどうか尋ねられます。上のいずれでもないときは、対応は変わりませんが、表示は対応しているフォントに変わります。


[Change Font]
[Change Font]により、Windowsがサポートしているフォントを選択するダイアログが現れます。Japanse TTをチェックすると和文や中国語のフォントとなります。

Sheet上に表示されているWindowsフォントを、選択したフォントで置き換えることができます。TrueTypeフォント以外の時は、[TrueType] のチェックをはずします。


[Add Font]
[Add Font]により、WindowsがサポートしているTrueTypeフォントを選択するダイアログが現れます。Japanese TTをチェックすると和文TrueTypeフォントとなります。

シート上のWindowsのリストの最後に、選択したフォントを付け加えることができます。最大256個まで登録できます。


[WinJFont]のjfm/tfm
TeXで使われるフォント名のリストです。ただし和文フォント名の末尾に数字があるときは、その部分を除いたものです。たとえば、min は、min10, min8 などに対応します（cf. -ftt:）。

新たなフォントをキー入力し、[Define]を押すとにより、フォントの追加とそれに使うWindowsフォントの定義ができます（最大256個）。

リストから選択すると、それに対して定義されている対応や設定値が表示されます。

なお、edefaultという名前を定義しておけば、対応が定義されていないフォントに対し、それと同じ名前のWindowsフォントがあればそれを用います。

defaultという名前で設定したものがあると、対応するWindowsフォントが見つからない横書き和文フォントに、その設定を用います。縦書きの場合は、tdefaultという名前で設定します。


[WinJFont]の平体
TeXのフォントに対し、平体／長体の字体を定義します。
平体は、縦の長さを縮小して、長体は、縦の長さを拡大して定義されます。


[WinJFont]の斜体
TeXのフォントに対し、斜体の字体を定義します。


[WinJFont]の向き
TeXのフォントの向きを定義します。通常は、horizontalかverticalを指定します。[Change Font]で表示させたとき、正常に表示されるものが前者で、文字が９０度回転して文字の上が左になっているものが後者です。


[WinJFont]のH position
TeXのフォントに対し、水平方向の位置補正をします。1000が大体１文字の幅です。0がデフォルトで、正の値で右（縦書きでは下）にずれます。斜体を用いたときは、これによる補正が必要かもしれません。


[WinJFont]のV position
TeXのフォントに対し、縦方向の位置補正をします。1000が大体１文字の幅です。0がデフォルトで、正の値で下（縦書きでは左）にずれます。斜体を用いたときは、これによる補正が必要かもしれません。


Japanese TT
和文や中国語のTrueType等のフォントを定義するときにチェックします。


code type
欧文TrueTypeフォントを使う場合に、TeXの文字コードとTrueTypeの文字コードの不一致を修正するためのコード変換を定義します（Property Sheets->[WinJFont]->code type）。

なお、jfm/tfm の欄に、対応する欧文フォントあるいは edefault を指定し、Japanese TT のチェックははずしておきます。

BaKoMa: 多くのTeX用の欧文TrueTypeフォントで用いられているコードに対応します。以下のようなコード変換を行います。

 0x00 - 0x09 -> 0xa1 - 0xaa
 0x0a - 0x20 -> 0xad - 0xc3
 0x7f        -> 0xc4

WinTeX: ImpressのWinTeXのTrueTypeフォントに適合します。

direct: コード変換は行いません。コードの不一致は、Virtual fontsを使って対応することができます。


TrueType fontの選択
Underline, StrikeOut の文字装飾の指定は、[Graphic]->color specials: (-cmode:)が patch2 の時に限り有効で、それ以外では無視されます。

TrueType のチェックをはずすと、TrueType以外のフォントから選択できます。

UniCodeをチェックすると、Windowsフォントはunicodeで呼び出されます。このとき、文字コード（たとえば、Virtual fontを使って変換されたもの）はunicodeと見なされてTrueTypeの文字が取得されますが、JIS->Uniをチェックすれば、TeXにおける文字コードはJIS codeと見なされてunicodeに変換されます。


[JFont2]
[JFont2] <- Property Sheets

Windowsのフォントに限らない和文フォントに関する設定を行います。

-TEXKNJ: 固定サイズのビットマップ和文フォントファイル（dviout独自の形式）を指定します。

-JC: 和文フォントの幾つかの文字のコードの変換を指定します。

-vfn: Windowsのフォント、書体倶楽部形式のフォントなどを用いるとき、それのコンフィギュレーションファイル（デフォルトのファイル名は dviout.vfn）をフルパス名で指定します。[WinJFont]での指定と併用はできませんので、Windowsのフォント以外の書体倶楽部形式フォントなどを使用するときのみ指定してください。

-S: アスキーpTeXにおける和文フォントの文字サイズを調整します。すべての和文フォントに対し、共通に調整が行われます。[WinJFont]などの調整と併用することもできます。

-J: アスキーpTeXにおける和文フォントのベースライン位置を調整します。

-ntt の指定で、NTT JTeXにおける和文フォントをアスキーpTeXにおける和文フォントで代替します。これにより、たとえばWindowsの和文TrueTypeフォントを用いることができます。

-nttF: NTT JTeXにおいて、\jfont であらたに和文フォントを追加した場合でアスキーpTeXの和文フォントによる代替を行うとき、追加したフォントに対してアスキーpTeXのどのようなフォントを用いるかを定義します。

-G: ゴシックにするフォントを指定します（LBP用ドライバを使ったdviprtによる印刷や疑似ゴシックで意味を持つ）。

-g: 縦書き用の和文フォントを横書き用の和文フォントで代用する場合にチェックします。

-Jfm: dviout内蔵のjfmデータを用います。

-Jbt: Windowsの和文フォントのbaselineをjfmによって調整する場合にチェックします。

-Jgt: Windowsの和文フォントの小さな文字のglue調整をjfmに基づいて調整する場合にチェックします。


-ntt の指定
-ntt:の指定で、dvioutがサポートするアスキーpTeX用の和文フォントを、NTT JTeXでタイプセットされたdviファイルからも利用できるようになります(Property Sheets->[JFont2])。

この場合、通常のアスキーpTeXの場合のようにjfmファイルを欧文のtfmファイルと別の所において、それを -TEXPK: の ^s.tfm で指定します。

また、NTT JTeXやezjTeXではフォント名が8文字を越えるため、-L:の設定にも注意してください（カットしない、または、中央のカットのみが可能）。

NTT JTeXの和文フォントでは、明朝に dmj* 、ゴシックに dgj* というファイル名が、JaWaTeXでは、明朝に mj* 、ゴシックに  bj* が使われています。

オプション -ntt: をONに指定すると、dvioutは dmj* あるいは mj* という名前のフォントをアスキーpTeXの min10 というフォントに、 dgj* または bj* を、アスキーpTeXの goth10 というフォントに置き換えた上で、
アスキーpTeXを使用している場合と同じように -TEXPK: や -TEXKNJ: を参照して、使用する和文フォントを決定します。

従って、dmj* あるいは mj* のようなフォントを用意しなくても、アスキーpTeXを使用している場合と同様に、JXL4フォントやWindows95の和文TrueTypeフォントなどを使うことができます。

NTT JTeXにおいて、\jfont によって新たに和文フォントを追加定義した場合は、-nttF: で設定します。


ビットマップ和文フォント
dvioutは、以下の３種類の独自形式の固定サイズビットマップ和文フォントを、-TEXKNJ:で指定することによって扱うことが出来ます。

1. 縦横が同一のサイズの和文フォントのビットマップのデータをJISコード順にそのまま並べたもの。

2. JISコード順に並んだ同一サイズの和文フォントのビットマップのデータを、knjtopk.exeによって圧縮したもの（PK和文フォント）。２種類の圧縮形式が選択できる。

3. 幾つかのコードの固定サイズの和文フォントのビットマップデータのみを集めたもの（KG和文フォント）。特殊な外字などに使用可能。

ビットマップ和文フォントのフォーマットについては、詳しくはMS-DOS版に付属のマニュアルを参照してください。


ビットマップ和文フォントのフォーマット

1.  固定サイズの非圧縮和文ビットマップフォントのフォーマットは以下のような簡単な構造です。

和文フォントの１文字のサイズを n x n（ドット単位）とします。m を、(n+7)/8 を越えない最大の整数とします。１文字のデータは、文字のビットマップの最上位列の左から右へ、各列 m バイトで、順に下の行へと m x n バイトの通常の形式です。

横幅のドット数が8で割り切れないときは、各列の最後のバイトの余った下位ビットには0を入れておきます。上位ビットが左側になります。

フォントファイルには、これがJISコード順に並んでいます。JISコードが J の文字のデータは、J = (H, L)（H は上位、L は下位バイト）とすると、ファイルの先頭から

   ((H-33)x94 + L - 33) x m x n

バイトをスキップした後になければなりません。

2.  上記の和文フォント（あるいは、上記と同様であるが縦と横のサイズが異なっていてもよい）をdviout独自の knjtopk.exe によって圧縮フォントファイルを扱うことができます。

  knjtopk c:\font\jfont\kanji.24 temp.24 24 24 H

のようにします。c:\font\jfont\kanji.24 がオリジナルのフォントで、tmp.24というのが圧縮されたフォントです。パラメータの２つの数字のうち最初の 24 は横のドット数で、後の 24 は縦のドット数です。

PKフォントの標準圧縮、あるいは、JXL4フォントで用いられる拡張圧縮と同様な方式で圧縮されます。上記の最後のパラメータ H で、この拡張圧縮を指定しています。

3. KG和文フォントのフォーマットは、少数の文字を登録して扱うのに適しています。文字のビットマップデータが圧縮されないで格納されています。ファイルの先頭は、圧縮された上記和文フォントと同様

0, 0, 247, id[1], width[2], height[2], byte_width[2], dummy[22]

となっています。ただし id は「G」となって、他の形式のフォントと区別されます。dummyは使われていませんが、0 になっています。そのあとに続くのは入っている文字のJISコードのリストで

total[2], code[total][2]

totalは入っている文字数、code[0],...,code[total-1]は、収録順にJISコードが書かれています（width[2]などと同じ2バイト整数）。その後に続けて隙間無く圧縮していない文字データ（1で述べた形式）が最後まで並んでいます。

１文字のデータサイズは、(width+7)/8 x height です。また、JISコードが J の文字は、code[n-1]が、J に等しいとすると J 番目に収められているので、先頭から (width+7)/8 x height x j + 2 x code + 34 byteのところからデータが存在することになります。


[Key]
[Key] <- Property Sheets

キーやツールバーのいくつかのボタンに関する機能の割り当てを行います。割り当て可能なキーは、

通常のキー（アスキーコード 0x21 - 0x7f）
CTRL + アルファベット(アスキーコード 0x00 - 0x1f）
ファンクションキー（Fn1 - Fn12）
SHIFT + ファンクションキー（SFn1 - SFn12）
オプションのツールバーの右の6つのUserボタン(User1 - User5, Button(cf.Q_V10))

ですが、0x00(CTRL + @), 0x20(Space), 0x08(CTRL + H), 0x09(CTRL + I), 0x0c(CTRL + M), 0x1f を除きます。

[Define] 機能（Function: ）とキー（Key: ）を選択して[Define]キーを押すと、そのキーに（他の機能が既に割り当てられていた場合は、それをキャンセルして）指定した機能が割り当てられます。複数のキーに同じ機能を割り当てることができます。

[Clear] 選択したキーに割り当てられている機能をクリアーします。

[Search] 選択したキーに割り当てられている機能をサーチして、左側のコンボボックスに表示します。

[All Clear] キーに割り当てられた機能をすべてクリアーします。

[Save] Property Sheetで定義したキー機能割り当てをRegistryにセーブします。セーブされる場所は、current modeでなくて、各mode共通の場所です。[REGISTRY]で、セーブしたキー機能割り当てを起動時にロードするかどうかは、各mode毎に独立に指定できます。

[Restore] Registryにセーブしたキー機能割り当てを、Property Sheetにロードします。

-macro: 5つのキーマクロ（Macro1,...,Macro5）を空白で区切って定義します。


[Key]のDefine
Function: のリストボックスで選んだ機能を、Key: のコンボボックスで選んだキーに定義します。

以前にそのキーに定義されていた機能は解消されます。


[Key]のClear
Key: のリストボックスで選んだキーに割り当てられていた機能をクリアーします。


[Key]のSearch
Key: のリストボックスで選択したキーに割り当てられている機能をサーチして、左側の Function: のコンボボックスに表示します。


[Key]のAll Clear
Key: のリストボックスにあるすべてのキーに対する機能の定義を解消します。


[Key]のFunction
Function: 各種の機能と、その機能がどのキーに割り当てられているかが表示されます。

[JN] のような表示は、dviout.par や コマンドラインからキーに機能を定義するときに、あるいは他のプログラムとの連携でのDDE通信に、機能を表すために使われます。これのさらに右側にあるのが、変更可能なキーです。


[Key]のKey
次のようにキーを表わします。

通常のキー（アスキーコード 0x21 - 0x7f）
CTRL + アルファベット(アスキーコード 0x00 - 0x1f）
ファンクションキー（Fn1 - Fn12）
SHIFT + ファンクションキー（SFn1 - SFn12）
オプションツールバー右端の6つのUserボタン(User1 - User5, Button)


キーシンボル

以下の左辺の２文字は、キー機能を表すシンボルで、キーマクロ、DDEのXTYP_EXECUTEトランザクションコマンド[Function( )]、dviout specials、パラメータ -Set: などで使われます。このときは、順に並べて指定でき、解釈・処理が順に進みますが

間に ; を挟んだとき：それ以前の部分の解釈と処理が終わるまで、以降の解釈を止めておく。

キーシンボルのアルファベットを小文字で書いたとき：それ以降の（;までの）部分の解釈（および、大文字で書かれていれば、処理）が終わった後に、そのキーシンボルの処理を実行する。

というのが原則です。処理の内容によっては、一連の解釈後に実行するものがあるので、このような仕様になっています。

!A  画面描画ストップ
!B  画面描画再開
!C  カバーシートのページへ戻る
!D  ページ内の下スクロール
!E  紙面の末尾
!F  Fit/Fullからの復帰
!G  プレゼンテーションでの背景の更新
!H  紙面の先頭
!I  必要性があれば画面更新
!J  DVIファイルのdvioutへの関連づけ
!K  スタートメニューへのdvioutの登録
!L  ページ内の左スクロール
!M  ウインドウの最大化
!N  プレゼンテーション Off
!P  プレゼンテーション On
!Q  一頁ずつ表示（通常）
!R  ページ内の右スクロール
!S  カバーシートを保留
!T  紙面周辺カットからの復帰
!U  ページ内の上スクロール
!V  反転画面へ
!W  反転でない通常の画面へ
!X  紙面の左端
!Y  紙面の右端
!Z  紙面周辺カット
D1  画面モード 1
D2  画面モード 2
D3  画面モード 3
D4  画面モード 4
D6  16ページ同時表示（サムネイル）
DA  ルーペのサイズをより小さく
DB  文字の輪郭をより黒く
DC  Color specialの ON/OFF
DD  ルーペの倍率を下げる
DE  ルーペのサイズを大きく
DF  画面に紙面が入る範囲で最も大きく表示
DG  ルーペの倍率を上げる
DH  マウスカーソルの形の変更
DI  グラフィック取り込みの On/Off
DL  紙面に画面が収まる範囲で最も大きく表示
DM  紙面をより大きく表示
DN  紙面の領域設定モードへ
DP  カラーの merge/replace
DR  紙面をより小さく表示
DS  4ページ同時表示（左から右へ）
DT  2ページを横に並べて表示
DU  目盛り付きルーペ
DV  反転画面と通常のものとの変換
DW  文字の輪郭をより薄く
DW  2ページ同時表示（右から左へ）
DX  領域切り出しからの復帰
DY  縦に2ページ同時表示（プレゼンテーションでは縦連結）
F1  前回の dviout で最後に扱ったDVIファイルへ移動
FH  DVIファイルの履歴
FN  DVIファイルを開き直す
FO  DVIファイルを開く
FP  印刷
FQ  dviout を終了
FS  画像として紙面を保存（クリップボードまたはファイル）
FX  現状を保存して dviout を終了
HA  dviout について
HB  バッファ情報
HF  フォント情報
HH  Online Help
HI  画面／ファイル情報
HK  キー機能表
HP  パラメータ情報
HS  システム情報
J0  50ページ進む
J1  50ページ戻る
J2  20ページ戻る
J3  10ページ戻る
J4  5ページ戻る
J5  2ページ戻る
J6  2ページ進む
J7  5ページ進む
J8  10ページ進む
J9  20ページ進む
JB  最後のページ
JD  ページ末尾／次ページ先頭
JE  次のページの先頭
JF  履歴における直前のページへ
JG  マークをつけたページへ
JH  ページの履歴表
JI  頁番号入力
JJ  HyperJump On/Off
JL  履歴における直後のページへ
JM  マークをつける
JN  次のページ
JP  前のページへ
JQ  履歴から抜け出る
JR  ページ範囲の設定
JS  履歴における直前のファイル
JT  最初のページ
JU  ページ先頭／前ページ末尾
JV  前のページの末尾
JX  マークと現ページの交換
N0  標準画面のプレゼンテーション
N1  白画面のプレゼンテーション
N2  黒画面のプレゼンテーション
N3  白背景のプレゼンテーション
N4  黒背景のプレゼンテーション
N5  下を覆うカバーシート
N6  右を覆うカバーシート
N7  左を覆うカバーシート
N8  右下を覆うカバーシート
N9  左下を覆うカバーシート
NB  青で線を描画
NC  線を消していく
ND  赤で線を描画Draw red
NE  周辺カット機能 On/Off
NF  カバーシート Off
NG  緑で線を描画
NG  プレゼンテーションの現状の設定を保存
NI  線画機能 On/Off
NK  黒で線を描画
NL  プレゼンテーションで、マウスの左ボタンを [Space] の役に
NN  プレゼンテーションモード On/Off
NO  カバーシート On
NP  カバーシートは、Pause があるページのみ On
NR  プレゼンテーションで、マウスの右ボタンを [Space] の役に
NT  線画の線を太く／補そく
NX  線／箱を描く
O1  キーマクロ 1
O2  キーマクロ 2
O3  キーマクロ 3
O4  キーマクロ 4
O5  キーマクロ 5
OC  source special の On/Off
OD  デフォルトと異なる設定値のパラメータリスト
OP  パラメータの設定をファイルから選択（Choose Parameters）
OS  パラメータの値の設定と変更
OV  dviout special の On/Off
PL  紙面縦置き／横置き
SD  順方向文字列検索
SF  文字列検索ダイアログへ
SU  逆方向文字列検索
VC  ツールボタン変更
VE  小さなエディタへ
VP  ページスライダ表示 On/Off
VR  スクロールバー表示 On/Off
VS  ステータスバー表示 On/Off
VT  ツールバー表示 On/Off
VV  ページ移動ボタンの向きを逆に
VW  警告表示の On/Off


[Search]
[Search] <- Property Sheets

文字列サーチに関するコンフィギュレーションです。
見つけられた文字列をどのように表示するかを指定できます。

normal mode, reverse mode はプレビュー画面が反転画面かどうか、通常使う方に指定してください（直前のmodeになっていますので、通常は変更不要でしょう）。逆にすると、色が補色になります。

merging, replacing は、他のHyperTeXなどによる色付けと併用したとき、両方が指定された文字列に対し、色を混ぜるか、置き換えるかを指定します。

Color: では、character(文字の色を変える)、box fill(文字の背景色を変える)、box frame(文字を枠で囲む)、line(線を引く)、line+char(線を引き文字に色を付ける)のいずれかが選択できます。色は８色の中から選択するか、反転を選びます。
線を引く場合、横書き文書では、アンダーライン(base lineか、boxの底辺か、位置が２通り選べます）か、オーバーラインが選択でき、縦書きでは、線を左右どちらにつけるか選べます。

これらの指定は、パラメータ-search:に対応しています。

up to(-sdpi:) で、どの解像度(dpi)のときまで色付けを行うかを指定します。
これはgray scaleによる縮小込みの値で、dpi=300として4分の1に縮小したgray scaleの場合、75と見なしています。たとえば、dpi=300のとき150と設定すると、当倍でgray scale表示を行わないときのみ色付けされません。
dvioutは、各ページをBMPファイルの形式の画像ファイルに展開しますが、色付けではより大きなファイルサイズとなるため（メモリーに余裕がない場合に）、色付けを制限する目的でこの指定が用いられます。

Coloring: では、Searchで見つかった文字列のみを色付けするか、そのページで該当するすべての文字列を色付けするか、の選択ができます。

Cursor: では、見つかった文字列の位置にマウスカーソルを動かすかどうかを指定します。白黒ディスプレイなどで、色付け表示ができないとき、このオプションを指定するとよいかもしれません。

-sFont: で、文字列サーチから除く（記号やグラフィックなどの）フォントを指定します。


[HyperTeX]
[HyperTeX] <- Property Sheets

HyperJumpが指定された文字列は色付け表示され、そこをマウスの左ボタンでクリックするとHyperJumpが実行されます。HyperJumpは、HyperTeX specialsによって実現されます。

色付けの指定(パラメータ-hyper:に対応)は、[Search]の場合と同様ですので、そちらを参照してください。また、[Search]で指定した up to: の値は、HyperTeXにおける色付けでも意味を持ちます。

disable hyperJump(-hyperoff:)  HyperTeX specials を無視します。
direct outerJump(-hyperoff:)   外部への HyperJump のとき、実行してよいかどうかを尋ねるダイアログボックスを表示しません。

dvioutでは、HyperJumpやジャンプ先が指定されたラベルとその位置は、dviファイルを変更しない限り、スキャンした部分をキャッシュとしてメモリーに保存しておきます。そのためのバッファのサイズを指定できます。
これを越えると、キャッシュはクリアーされてしまいますが、１ページでその制限を越える場合は、正しく処理がなされません。また、HyperJumpを含むdviファイルを扱わない限り、メモリーにこのバッファは確保されません。

注意：デフォルトでは、表示中のdviファイルへの HyperJump は、マウスの左ボタンのクリックで直ちに実行されますが、外部へのジャンプに関しては、ダイアログボックスの表示を経由しています。
ただし、CTRLボタンを押しながらマウスの左ボタンをクリックした場合や実行ファイル、不明なファイルへの場合は、常にダイアログボックスを表示します。

URL(-href:)        HyperJumpの数
Name(-hname:)   ジャンプ先のラベルの数
String buf(-hbuf:) ジャンプ先やラベル名を保存しておくための文字列バッファのサイズ

non-default Browser(-Browser:)   システムがデフォルトでサポートしているWWWブラウザ以外のものを使うときに、ここをチェックし、そのパス名を指定します。

-ToEdit:     dviout specials の `in `input での Editor への直接入力機能を指定する。


HyperTeX specials

HyperTeX は、TeXにおいてHTMLの言語を取り入れ、TeXで作成された文書内部、ローカルマシン内部の他のファイル、あるいは、インターネットを通じた外部へのHyper Jumpを実現するものです。

HTMLにおける <a href="..."> ... </a>, <a name="..."> ... </a>に対応するものは、HyperTeX specials
\special{html:<a href="....">} ... \special{html:</a>}
\special{html:<a name="....">} ... \special{html:</a>}
として実現されます。そのためのLaTeX用のスタイルファイル（奥村氏による）を以下に載せます。
-------------------  myhyper.sty  --------------
\def\href{\leavevmode\begingroup \@sanitize \@href}
\def\@href#1{\special{html:<a href="#1">}\endgroup \@@href}
\def\@@href#1{#1\special{html:</a>}}

\def\base{\leavevmode\begingroup \@sanitize \@base}
\def\@base#1{\special{html:<base href="#1">}\endgroup}

\def\img{\leavevmode\begingroup \@sanitize \@img}
\def\@img#1{\special{html:<img src="#1">}\endgroup}

\def\name{\leavevmode\begingroup \@sanitize \@name}
\def\@name#1{\special{html:<a name="#1">}\endgroup \@@name}
\def\@@name#1{#1\special{html:</a>}}
-------------------------------------------
HTMLで使われる # などが、TeXでは特殊な意味を持ってしまうので、上のようなスタイルファイルを用意します。
ただ、最後の \name だけは単なる文字列しか引数にとらないはずなので，

\def\name#1#2{\leavevmode\special{html:<a name="#1">}#2\special{html:</a>}}

でもよかったかもしれません。

ちなみに，HyperTeX の仕様は上の4個のマクロに尽きてしまいます。

dviout for Windowsは、<a href=...>, <a name=...>, </a>のHyperTeX specialsをサポートしています。

  \href{#foo}{ここ}をクリックすると
  ......
  \name{foo}{ここ}に飛びます。

  \href{http://akagi.ms.u-tokyo.ac.jp/ftp-j.html#TeX}{こちら}から
  dviout for Windowsの最新版が得られます。

  dvioutでは、表示している文書の存在するディレクトリを基準として
  \href{file:.\hypertex\hyper2.dvi#jump}{他のdviファイル}への移動や
  \href{file:\index.html}{HTMLファイル}の表示、他の資源、たとえば
  \href{file:MyMovie.avi}{AVIファイル}のアクセスに対応しています。

のような具合です。

注意 1.  拡張子 .exe, .com, .cmd, .bat をもつローカルなファイルを実行する場合は、^s に続けて
\special{html:<a href="file:notepad.exe^sreadme.txt">} ... \special{html:</a>}
のように、渡すパラメータを指定できます。

注意 2.  dviout special は
\special{html:<a href="dviout:macro">} ... \special{html:</a>}
という形で、HypeTeXにすることができます。


[Common]
[Common] <- Property Sheets

マウスの右ボタンを押したときに表示されるルーペやsource specialに関連する設定を行います。ここでの設定のRegistryへの[Save]は、各mode共通の場所で、modeによらない設定となります。

CTTLキーを押しながらマウスの右ボタンを押したときは、別のスケールとサイズのルーペとなりますが、これはOption(+CTRL)の枠で囲んだ部分で設定できます。

Size: ピクセル（ドット）単位の大きさで、ルーペの一辺の長さ、または、ルーペが円形の場合は直径を指定します。

Scale: オリジナルのdpiを何分の一に縮小するかを指定します。たとえば、オリジナルのdpiを6分の1に縮小したgray scaleで表示していて、Scale: を2と設定すると、通常の3倍に拡大したものが、ルーペで表示されます。

Speed: ルーペの残像が残って見難いときは、この数を増やします。少ないほど滑らかに動きます。

Shape: ルーペの形を円にするか正方形にするかを選択します。正方形の方が、高速に表示されます。正方形の場合は、目盛りつきを選べます。１目盛りは 4 ピクセルを表します。

Back: 背景色を指定します。通常はdefault（紙面の色）にしておきます。特に白、反転のときは黒とすると、ルーペを移動したときのちらつきが少なくなります。

Edge view: ルーペをスクリーンの端に動かしても、ルーペがスクリーンからはみ出さないようにします。

-src: source specialsにおけるエディターの起動方法を設定します。

-gsrc: グラフィックエディターの起動手順を設定します。

-isp: dvioutが解釈できなくても警告を出さない specials を ; で区切って指定します。


[Graphic]
[Graphic] <- Property Sheets

-tpic: tpic specialsのコマンドを有効にするかどうか、また、有効にした場合、曲線描画についてBezier曲線を用いる（これがデフォルト）か、spline曲線を用いるか、またpTeX縦書きモードで座標を回転させるかどうかの指定します。

-GS: PostScript specialsや、PS/EPSファイル、PBMファイルなどの画像データファイルに対する処理を指定します。

-gbox: 取込画像の外枠を表示することができます。このオプションは、-GS: で画像ファイル取り込み機能をOFFにしても有効です。

-gfit: gray sacleを使った縮小表示で、PostScriptのカラー画像を扱う場合、中間のカラーBMPファイルを縮小したサイズのものにするかどうかを指定します。

-gsize: dviファイルのmagnificationの値が1000でない場合に、PostScript specials に指定された EPS/PS画像の取り込みのサイズは、magnificationを行ったあとと解釈するかどうかを指定します。

-GIF: Ghostscriptを用いて生成する画像ファイルの形式を選択します。デフォルトはraw PBMですが、BMP(256 color)などにすると、カラー画像が扱えます。

PostScriptファイルから作成する画像データのファイル名は、元のファイルの拡張子のみを .pbm または、.bmp に変更したものとなります。

-gdat: dvioutが扱うPBMまたはBMPファイルが置かれるディレクトリは、デフォルトではカレントディレクトリですが、これを -gdat: で設定することができます。

-gsx: Ghostscriptは、gswin32.exe というファイル名で、パスの通ったディレクトリに存在すると仮定されますが、パスを含む起動コマンド名を -gsx: により変更できます。
また、これを用いると起動にパラメータを付加することができ、それには、スペースの代わりに ^ を区切りに使って

-gsx:c:\bin\gswin.exe^-dNOKANJI

のように指定します（Ghostscriptのパス名に空白が含まれるときは、[gsx]ボタンで取得できるような短いパス名を用いてください）。

-gow: 取り込み画像が文字やほかの画像と重なったときのモードを定めます。

-gclip: EPSF画像の取り込みの際、BoundingBoxでクリップします。

-spi: Susie plug-in の存在するディレクトリを設定します。Suise plug-inを用いれば、dvioutは各種のフォーマットの画像ファイルを扱うことができます。

-color: \special による文字や線の色付けを有効にします。

-cmode: color specials による色付けが重なった場合のモード（auto(p2), merge, replace, patch, patch2, auto(rep)）を定めます。


tpic specials

tpic は、Brian KernighanのTroff用図形プリプロセッサpicを元にして、Tim Morganが作り上げたTeX用図形プリプロセッサ、およびそれが出力するspecialコマンドセットの名称です。LaTeX用のマクロとして、eepicなどがあります（詳しくは、添付のドキュメントをご覧ください）。

dvioutでは、通常のtpic specialsのコマンド(tpic 2.2)をサポートしています：

pn, pa, fp, ip, da, dt, sp, ar, ia, sh, wh, bk

dvioutでは、da コマンドの拡張のほか、新たに rt, Bz コマンドを設け、独自のtpic specialsの拡張がなされています。

注意： dvioutは、ページ毎に処理を行なうのでページをスキップして表示／印刷すると以前のページの線幅が生かされずデフォルトの線幅になることがあります。デフォルト以外の線幅を複数ページにわたって用いるときは、各ページの最初か一連のtpic specialsの直前に pn コマンドを書くのが無難です。

注意: dviprt機能によるLBPでの印刷の場合は、LBPの内蔵和文フォントやダウンロードフォントについて、シェーディングでの白での塗りつぶしによる消去がサポートされていません。

注意： dviout 独自の機能として、ファイルからのspecialsの読み込みがあります。複雑なtpic specialsを扱う場合の校正時などに用いると便利でしょう。


tpic specialsのコマンド

個々のグラフィック要素の位置の原点は、TeXが保持している「ページ上の位置」で、右方向がＸ軸、下方向がＹ軸の正の向きとなり、座標はミリインチ（0.254mm）単位の整数で表します。

角度は、Ｘ軸の正の方向から時計周りのラジアン単位で、0から2πまでの値を取ります。弧の描画では、開始角度を0とし、終了角度を2π以上にとることにより、完全な円または楕円を表します。

\special{pn s}%   線幅をsミリインチにします。

\special{pa x y}% 点(x,y)をpath（経路）に加えます。

\special{fp}% それまでに定義されたpathを、現在の線幅で描きます。シェーディングが設定されていて、パスが閉じていれば、path内部を実際に塗りつぶします。path内の点の数は、0にリセットされます。

\special{ip}%  \special{fp}と同じですが、pathを描きません。条件が満たされれば、シェーディングを行います。

\special{da f}% \special{fp}と同じですが、pathは破線で描きます。fは実数で、ダッシュあたりの長さをインチ単位で指定します（cf. tpic specialsの拡張）。

\special{dt f}% \special{fp}と同じですが、pathは点線で描きます。fは実数で、点の間隔をインチ単位で指定します。

\special{sp d}% \special{fp}と同じですが、pathはspline曲線で描かれます。dは実数で、曲線の種類を指定します。
・d=0かdが省略された場合、実線で描きます。
・d>0の場合、破線で描きます。dはダッシュの長さです。
・d<0の場合、点線で描きます。-dは点間隔です。

\special{ar x y u v s e}% 中心(x,y)の弧を描きます。sは開始角度、eは終了角度で、ラジアン単位の実数です。
完全な円か楕円であるばあいは、u, vは、それぞれx, y半径を表します。そうでない場合は、u=vであり、sからeへ弧が描かれます。条件が満たされれば、シェーディングも行います。

\special{ia x y u v s e}% これは、\special{ar x y u v s e}と同じですが、弧は描かず、条件が満たされればシェーディングを行います。

\special{sh s}% シェーディングを指定します。このコマンドの次に定義される閉じた図形（3つ以上のpaとそれに続くfpかip、もしくは、arかia）の内部を塗りつぶします。
sは、0以上1以下の実数です。0は白で塗りつぶすことを意味し、図形の下にあったものはテキストも含め、全て消去します。0以外の値は灰色を意味し、図形の下にあったものを消去せずに灰色を塗り加えます。
0.5がデフォルトの値で、通常の灰色にあたり、1は黒を意味します。sが指定されていなければ0.5の値を用います。シェーディングは図形の内部のみに対して行い、境界線はそれとは独立に、現在の線巾を用いて行います。

\special{wh}% \special{sh 0}と同じ。
\special{bk}% \special{sh 1}と同じ。


tpic specialsの拡張

dvioutのtpic specialsは、本来のtpicspecialsと比べて、以下のような拡張が行なわれています。これらは、一般にdviout以外ではサポートされていないので、これらを使用して作成したdviファイルは、互換性の点で問題がある ことにご注意ください。

daコマンドの拡張
gnuplotなどで関数グラフを描くのに便利なように、da コマンドを拡張し、複数の引き数を取れるようにしました。

引き数は交互に実線部分、空白部分の長さをインチ単位の実数で指定します。この場合、破線はこの指定パターンのくり返しで描かれ、パスの各点を「連続に」通過します。すなわち、各点上に実線部分が乗るとは限りません。例えば

\special{da 0.1}%     o___   ___    ___o___   ___
\special{da 0.1 0.1}% o___   ___   ___ o ___   ___
\special{da 0.1 0.01 0.01 0.01}          % 一点鎖線
\special{da 0.1 0.01 0.01 0.01 0.01 0.01}% 二点鎖線

rt コマンドの増設
回転や拡大、鏡映などの線形変換を施した描画を行います。パラメータの個数により、意味が異なります。

rt p で、p は以下の整数です。
・1のときは現在の線形変換の状態をスタックに積み、-1のときはそれを（スタックが空なら、恒等変換を）戻します。スタックの深さは、16段までです。ページが変わるとスタックは空にリセットされます。
・2のとき、取り込み画像の描画を、下絵を消さずに色を混ぜるモードにし（-gow:-）、3のときは、下絵を消すモードにします（-gow:+）。また、4のときは、直前の rt 2 または、rt 3の実行前のモードに（-gow:を）戻します。
・rt 0 は、rt 0 0 0 と同じです。

rt h v で、カレントポイントを原点として、以後の全てのテキストおよびグラフィックス出力を、横方向に h 倍、縦方向に v 倍にスケール変換します。負の値も可能です。

rt x y f で、以後の全てのテキストおよびグラフィックス出力を(x,y)の回りに角度 f だけ回転させます。
他のtpicコマンドの場合と同様、x, y はミリインチ単位の整数、f は時計回りが正のラジアン単位。

例えば

\begin{picture}(500,500)
\put(100,250){\special{rt 0 0 4.71239}\makebox(0,0){Leftside}%
\special{rt 0 0 0}}
\put(250,250){\special{rt 0 0 3.14159}\makebox(0,0){Upsidedown}%
\special{rt 0 0 0}}
\put(400,250){\special{rt 0 0 1.57080}\makebox(0,0){Rightside}%
\special{rt 0 0 0}}
\end{picture}

rt h v w z で、以後の全てのテキストおよびグラフィックス出力を、カレントポイントを中心に次のように一次変換します。
(X, Y) -> (h*X + w*Y, z*X + v*Y)

上記の変換は、\special{rt 1 1}, \special{rt x y 0}, \special{rt 1 1 0 0} で、リセットされます（どれも同等です）。

実際は、これらとスタックのトップにあるもの（空の場合は、恒等変換）と合成された結果の変換となります。したがって、スタックが空なら、以前のものは無視され、置き換えとなります。たとえば

\special{rt 0 0 -.5236}%
\special{rt 1}%
\special{rt 1 2}%
text
\special{rt -1}%
\special{rt -1}%

は、「text」という文字列を、縦方向のみ2倍に拡大し、さらにそれを反時計回りに15度回転したものが出力されます。

注意: スタックの積み戻しは、LaTeX2eのgraphics packageのdvips用出力で、回転やスケール変換を行った場合も使われます。この場合は、graphics packageのこれらの変換のネスティングの状態が同じレベルで、積むのと戻すのが必ず対になるようにしてください。

Bzコマンドの増設
これは、sp コンドで描画する曲線をspline曲線からBezier曲線へ、あるいはその逆へ切り替えるコマンドです。

\special{Bz 1}で以降の  \special{sp} をベジェに
\special{Bz 0}で以降の  \special{sp} をスプラインに

となります。
デフォルトは、spline曲線を用いますが、オプション -tpic=1 でBezier曲線に変えることもできます。


ファイルからのspecialsの読み込み

tpic specialなど、任意の複数個の連続した \special をファイルに書いておき、それを読み込むことができます。TeXでの書式は

\special{file=file_name}

とします。file_name に \special を書きます。

ファイルのサーチパスは、BMPファイルなどと同じで、カレントディレクトリ、-gdat: で示されたディレクトリ、が探されます。

ファイル中に % があると、 0x0a の改行コードまで無視されます。

ファイル中の \special{...} の、{...} の中の部分のみ解釈され、それ以外の部分は無視されます。

この {...}の中に、{ } のネストがあっても、正しく処理されます。また、{...}の中の 0x20 以下の文字コードは、全て空白に置き換えられます。

一つの、{...} の中は、最大 4000 byteまで許されます。


画像データファイル
dviout は、PS/EPS, WMF/EMF, raw PBM, BMP/BMC（monochrome, 16色, 256色, 65,535色, フルカラー）, その他各種の画像データファイル、あるいはそれを gzip で圧縮したものを読み込むことができます。
ファイルは、DVIファイルへの埋め込みとするか、dviファイルの存在するディレクトリ、あるいは、-gdat:で指定したディレクトリのいずれかに置きます。

画像データファイルのspecialsを参照してください。

dvioutの側では、通常は、Property Sheets->[Graphic]のGhostscriptの項でOnをチェックしておきます(-GS:)。

PostScriptを扱う場合は、-GIF:で指定したraw PBM または（多色カラーの場合は、対応する）BMP出力をサポートしたGhostscriptが必要で、通常、そのフルパス名を-gsx:に書きます（あるいは、ボタンを押して実行ファイルを開く）。

PS/EPS, WMF/EMF, raw PBM, BMP/BMC以外の画像ファイルを読み込むには、その画像形式に対応した Susie plug-in(cf. -spi:)が必要です。


画像データファイルのspecials

dviout は、PS/EPS, Windows metafile, raw PBM, 白黒およびカラーBMP の画像データファイルを読み込むことができます。Susieのplug-inを使うと(cf. -spi:)各種画像データを読み込めます(JPEG/TIFF/PNG/PCD/PPM etc.)。
またファイルに書いたプリンタの制御コードの取り込みによる画像印刷も可能です。

EPSF(Encapsulated PostScript File)の場合、Ghostscriptを使って画像を取り込むことができますが、dvioutがサポートしている \special は、(ecl)epsf.sty や epsfig.sty などで使われる

epsfile=epsf_file [parameters]

または、LaTeX2e の graphic package(cf.Q_O18) の graphics.sty や graphicx.sty などが dvips への出力に用いる

PSfile=epsf_file [parameters]

で、epsf_file は、EPSファイルの名前を表します。名前は、"foo.ps" のように、"  " で囲っても、foo.ps のように囲わなくてもかまいません。勿論これらは直接 \special{...} としてTeXのテキストに書いて指定できます。

そのほか、epsbox.sty の出力する

postscriptbox{widthpt}{heightpt}{epsf_file}

もサポートしています。PSfragも扱うことができます。

この [parameters] については、PostScript specialのパラメータや、PostScript specialの使用例を参照してください。

%%BoundingBox: のないPostScriptファイル、raw PBMファイル（拡張子 .pbm は省略可能）、monochrome/color BMP（拡張子 .bmp は省略可能)/Windows Metafle/Susie plug-inで扱える画像のときは、それぞれ

psfile=ps_file [parameters]
pbmfile=pbm_file [parameters]
bmpfile=graphic_file [parameters]

という \special をサポートしています（raw PBM用の pbmf.sty というスタイルファイルが付属しています）。[parameters] は、hsize, vsize, height, width, hscale, vscale, scale, truesize, reverse が使えます（cf. PostScript specialのパラメータ）。

ps: PS code

あるいは

" PS code

によって（後者では、" の後に１文字の空白が必要）直接 \special に埋めこまれたPostScriptのコードが完結した画像描画であった場合、それを処理することができます。

また次の形式でのPostScript以外の画像ファイル取り込みもサポートしています。前者は emTeX, MikTeX+yap 後者は、dvipdfm で使われます。

em: graph graphic_file[,width[,height]]

pdf: image width widthpt height heightpt depthdepthpt(graphic_file)

なお、LaTeX2eのグラフィックパッケージのgraphicx.styをデフォルトのdvips用出力で用いた場合、以下の制限がありますが、grfguide.texに解説されている全てのキーワードが使えます。

1. PostScript画像は、90度の整数倍のみの回転ができますが、それ以外のカラー画像やEMF/WMF画像の回転はできません（多色形式のBMPファイルであっても、実際に白と黒の２色しか使われていなければ、カラー画像とはみなしません。灰色は別の色とみなします）。ただし、

2. PostScript以外のカラー画像は、スケール変換を指定できません。

3. \DeclareGraphicRules の最後の引数にコマンドを指定することはできません。

4. \pagecolor は、宣言したページのみ有効です。

5. PostScript画像をdvioutが扱うとき、dviout独自のBMC画像ファイルが生成されますが、これはBMPファイルと同等に扱えます（dviout は、foo.bmp を探す必要があるとき、まず foo.bmc を探し、それが存在すれば、foo.bmc を取り込みます）。

6. グラフィックファイルは、DVIファイルからの相対ディレクトリで指定することができます。その場合、ディレクトリ名の区切りに / を使うことが出来ます。

7. グラフィックファイルをgzip で圧縮したものを取り込むことができます。その場合、ファイル名は元のファイル名の末尾に .gz を付加したものになっていて、また gzip あるいは gunzip がパスの通ったところにあって利用できる必要があります。

次のような例が使用できます。

\includegraphics[<key val list>]{file}
\includegraphics*[<key val list>]{file}
\rotatebox[<key val list>]{angle}{text}
\scalebox{<h scale>}[<v scale>]{text}
\textcolor{<name>}{text}


PostScript specialのパラメータ
hsize=width vsize=height : 取り込む画像の幅と高さを表す。EPSファイル中の %%BoundingBox: を読んで、それが指定したサイズになる（hsize とvsize の一方のみを指定した場合は、縦横比を保つ）ようにスケール変換される。
width, heightは長さを表し、単位（cm, inch, mm などが可能）を付けない場合は、PostScriptでの単位でのptの値（72pt=1 inch）とみなされる。

上記hsize=, vsize=はそれぞれwidth=, height=としてもよい。

hscale=w vscale=h : 縦と横を何倍にスケール変換するかを実数（負の値も可）で指定する。一方のみを指定したときは、相似変換される。

scale=s : s 倍に相似変換される。負の値でもよい。

llx=x1 lly=y1 urx=x2 ury=y2 : EPSファイルでの %%BoundingBox: の指定と同じ意味で、(x1,y1)-(x2,y2)を対角線の頂点とする矩形の部分の画像の切り出しを意味する。単位は、PostScriptでのptで、スケール変換する前の値である。

rwi=ww rhi=hh : hsize=, vsize= の指定と同じ意味であるが（一方のみの指定も可）、ww,  hh は、PostScriptでのptを10倍した値。

hoffset=h_off voffset=v_off : EPSファイルから取り出すときの位置を、水平／垂直方向にずらす。width の場合と同様に、h_off, v_off で長さを与える。

truesize : サイズは、dviファイルにある magnification の値や、-mag: -e: などの影響を受けない。

truedirection : pTeXによる縦書きの場合でも、元と同じ向きで画像を取り込む（指定しないと、LaTeX2eのgraphics packageと同様に時計回りに90度回転する）。

clip : EPSから取り出した場合、その周りにはみ出した画像があってもカットする。デフォルトでは、周囲を 1 inch 幅で取り込んでいる。

reverse : 白黒反転（ただし、画像をカラーで扱うときは、無視されます）。


PostScript specialの使用例
LaTeX2e の graphics package の graphicx.sty を使用
\usepackage{graphicx, color}
\includegraphics*[width=8cm,height=12cm, keepaspectratio]{golfer.ps}
\includegraphics[width=8cm,height=5cm]{figure.bmp}
\includegraphics[width=5cm,height=4cm]{images/figure.bmp.gz}
\rotatebox[origin=c]{180}{...Like This...}
\scalebox{1}[2]{High}
{\color{red}This is red.}
このときは、付属のdviout.def, graphics.cfg, color.cfg の3つのファイル、あるいは、以下の一行のみを中身とする graphics.cfg と color.cfg とを、graphics package と同じディレクトリに入れておきます（ただし、texmf\tex\latex\config というディレクトリがあるときは、graphics.cfg と color.cfg をそこに入れます）。
\ExecuteOption{dvips}

なお、graphics.sty を用いた場合は
\includegraphics[8cm,5cm]{figure.bmp}
のように書き、keepaspectratio などのオプションは指定できません。

Susie plug-in(cf. -spi:)を用いてその他の画像ファイルを扱うとき、あるいは、Windows Metafileを取り込むときは、上のfigure.bmpをfigure.jpg, figure.png、あるいは figure.wmfのように変えます。このときは、付属のdviout.defを用いる必要があります。

LaTeX 2.09 で、epsf.sty を使用
\documentstyle[epsf]{article}
\begin{center}
  \leavevmode
  \epsfsize=87mm
  \epsfbox{golfer.ps}
\end{center}

直接の指定例
\special{epsfile=golfer.ps hsize=5.2cm vsize=7.5cm}
\vspace{9cm}
\special{pbmfle=tiger vsize=5cm}
\vspace{6cm}
\special{epsfile=golfer.ps scale=0.5}


-GS: で、画像データファイルの取り込みに関する \special の処理方法を指定します（詳しくは、Property Sheets->[Graphic]）


Ghostscript
dvioutが、PostScriptのコードを解釈するのに必要なプログラムです。これを書いている時点で、Windows95上でWindows95のTrueType和文フォントが使用可能な

gswin32.exe/gswin32c.exe   Ver.5.50

が存在します。これは、monochrome gif形式をサポートしていませんのでご注意下さい（cf. Q_E4）。


BMPファイル
MS Windowsが標準としてサポートしている画像ファイルがBMPファイルです（dvioutが画像データファイルとして取り込むことや、表示画面をBMPファイルとしてセーブすることが可能）。

dvioutでは、各ページをBMPファイルに展開し、それを用いて表示または、印刷を行います。カラー画像ファイルのデータとは、表示／印刷のときに合成します。

・拡大・縮小がない場合、あるいは印刷の場合には、2色（白黒）のBMPファイル
・gray scale表示には、16色のBMPファイル
・SearchやHyperTeXによる色付けでは、256色のBMPファイル

が通常用いられます。そのほか 6万色、1677万色の非圧縮BMPファイルなどを読み込むことができます。

例 A4での1ページで、dpi=300のときのBMPファイルサイズの目安は以下の通りです（dpi=600ならば以下の4倍）。

等倍の2色BMP:         約1M byte
等倍の256色BMP:       約8M byte
等倍のフルカラーBMP: 約24M byte
4分の1に縮小(75dpi)のgray scaleの16色BMP: 約256K byte
4分の1に縮小(75dpi)の256色BMP: 約500K byte


BMC
dviout 独自の画像フォーマットで、無圧縮のBMPフォーマットを単純な方法で圧縮したもの（付属のドキュメントを参照）。ファイルサイズの減少と圧縮復元の高速化が目的。

dviout では BMP 形式と区別無く扱われるが、付属の bmc.exe によってBMPファイルとの相互変換ができる。


カレントディレクトリ
dviout for Windowsは、現在表示中のdviファイルが存在するドライブとディレクトリが、カレントドライブとそのカレントディレクトリになります。

ただし、ネットワーク上のdviファイルの場合や、dviファイルを表示していない場合は、この限りではありません。

カレントディレクトリは、specials による取り込み画像ファイルの最初のサーチパスになります。


[Printer]
[Printer] <- Property Sheets

このSheetでは、プリンタあるいはそのドライバに固有の性質にかかわる調整を行います。

調整値は[Save]でRegistryに保存し、[Apply]で現在のセッションに適応します。
Registryにセーブしたものを起動時のデフォルトにするには、[REGISTRY]のシートで、対応するすべてのオプションを[Auto Load]でチェックして、[REGISTRY]のシートで[Save]します（デフォルトでは、セーブされたすべてのオプションが起動時にデフォルトとしてロードされます）。

 -area:(Use default area for system driver) Windowsのプリンタドライバを使う場合、印字不能領域の幅に以下の設定を用いずに、そのドライバのデフォルトにします。

 -LM:  紙面左端の印字不能領域の幅

 -TM:  紙面上端の印字不能領域の幅

TeXのdviファイルの原点は、紙面の左上端から右に 1 inch、下に 1 inch入ったところにあります。プリンタは通常、紙面の左上端から印字できないため、調整を行わないと、この原点が、より紙面の右下にずれて印字されてしまいます。

Windowsのデフォルトでうまくいかない場合は-area:のチェックをはずし、付属のdviファイルを印刷して、dviファイルの原点が正しい位置に来るよう、-LM:, -TM: を調整してください（cf.印字位置の調整）。
それぞれの値を増やすと、紙面に対する印字位置が左、あるいは、上にずれます（プレビューしたときの紙面上の位置と、実際に印刷した結果との位置補正のパラメータです）。

注意：dvioutの内蔵ドライバを用いる場合は、-area:の如何にかかわらず、-LM:, -TM: の設定値が常に有効です。

注意：一時的に印字の位置を（TeXの標準から）ずらしたい場合は、-LM:, -TM: でなくて、-OX:, -OY: を用います。

 -RM:  紙面右端の印字不能領域の幅

 -BM:  紙面下端の印字不能領域の幅

注意１： -RM:, -BM: は、Windows95（のプリンタドライバ）が処理しますので、通常は指定する必要はありません。また、これらの値は印字される位置に影響を及ぼしません。

注意２： [Paper]でLandscapeを選んだ場合は、90度時計廻りに回転した像で印字されるので、TeXのdvi原点は、-TM:, -RM: で調整されることになります。
（紙を90度反時計廻りに回転して）正しい向きに戻すと（すなわち、TeXのdvi原点を紙面の左上にすると）、-TM:を増やすことが原点の左移動、-RM:を増やすことが、原点の上移動ということになります）。
ただし、dviout内蔵のLIPS III/IV, ESC/Page用ドライバの場合のみは、LandscapeでもPortraitのときと変わらず、-LM: -TM: で調整されます。

--- Windowsのプリンタドライバを用いない印刷（-dviprt:の設定）---

dviprt is default: 印刷のダイアログで、Windowsのプリンタドライバを使用せずに、-dviprt:の指定に従うことをデフォルトにします（印刷のダイアログのdviprtのチェックに対応）。

follow default dpi: 設定されたdviout内蔵のプリンタドライバを使うとき、dvioutで設定してあるdpiでなくて、内蔵のドライバのデフォルトのdpiを用います。

[CFG file]:dviout内蔵のプリンタドライバで、外部のプリンタコンフィギュレーションファイルを使った印刷を行うときに、コンフィギュレーションファイルを指定するのに用いるボタン。

-dviprt: Windowsのプリンタドライバを使用せずに、dviout内蔵のドライバを使って印刷したり、コンソール版dviprtやdvipsなどを呼び出して印刷する場合の方法とパラメータを指定します。


[Paper]
[Paper] <- Property Sheets

Paper size: ページの紙面サイズを指定します。Defined by User を選択した場合は、縦横のサイズを指定します。
dvioutはこのサイズに基づいて各ページの画像イメージのBMPファイルを作成します。

Orientation: 紙面をPortrait（縦置き、default）にするかLandscape（横置き）にするかを指定します。

注意：Paper size: と Orientation: の指定は、印刷の際のプリンタおよびそのドライバへの指定とは独立です。通常、印刷の際も同様の指定をする必要があります。

-OX: 横方向の出力位置の補正の設定
-OY: 縦方向の出力位置の補正の設定

注意：dviファイルでは、用紙左上を基準として(1inch, 1inch) = (25.4mm, 25.4mm)の位置に原点があります。
基本的には、（-LM:,-TM:が正しく設定してあれば）この原点が実際の用紙の上でも(1inch, 1inch)の場所に来るように印字されます。しかし、何らかの理由で原点をずらしたい時に、-OX: と-OY: のオプションを指定します。
-OX: -OY:を変化させると、プレビューしたときの紙面上における文書の位置も変化します（-LM: -TM:は、この位置に影響を及ぼしません）。

-HC: dviファイルから読み取ったテキスト幅を文書の横幅と考え、設定してある紙面の横幅を基準に文書の横方向のセンタリングを指定することができます。
-VC: dviファイルから読み取ったテキストの高さを文書の縦幅と考え、設定してある紙面の縦幅を基準に文書の縦方向のセンタリングを指定することができます。
-HS: 横方向のセンタリングを指定したとき、そのセンタリング後に行う横方向の移動を定義することができます。
-VS: 縦方向のセンタリングを指定したとき、そのセンタリング後に行う縦方向の移動を定義することができます。

-edge: Presentation Menu -> Cut edge のときの上下左右の空白の幅を指定します。

注意：dviファイルに書かれているテキストサイズは実際の用紙サイズと無関係のこともあります。通常は、-HC: -VC: などのオプションをはずしておきます。


[System]
[System] <- Property Sheets

-br: 各文字のビットマップデータなどを保存しておくキャッシュバッファのサイズを指定します。

-bf: PKフォントなどのフォントファイルのキャッシュ用のバッファのサイズを指定します。少なくともPKフォントの最大サイズの大きさが必要です。

-bb: ページのイメージを展開するためのバッファの許容最大サイズを指定します。実際に確保するのは、必要なサイズのみであるので、十分大きなサイズを指定しておきます（A4サイズで、dpi=300のときは、約1M byteのバッファが必要。dpiが2倍になると4倍の約4M byteのバッファが必要となります）。

-multi: 同時に起動可能なdvioutの最大数を設定します。

-log: dvioutのエラーやWarningなどの情報を記録するログファイルのパス名を指定します。単に + とすると、dviout.exe の存在するディレクトリに dviout.log というファイル名でログファイルが作成されます。一方、- とすると、ログファイルは作成されません。メニューバーからもこの設定は変更可能です。

-texhelp: Help → TeX Help で表示するDVIファイルやそのときのパラメータを指定します。

-renew: dviout以外のWindowに移動し、再度dvioutのWindowに戻ってきたとき、表示中のdviファイルが書き変えられていないかどうかチェックし、書き換えられていれば、表示を自動更新する機能を設定します。

-button: Backward/Forward history などのツールボタンのセットをデフォルトに変更します。

-base: 各文字のbase lineを表示します。これは、校正などのチェック用。

-box: 文字の代わりにその文字の閉める範囲を「箱」に変えて組版します。校正などのチェック用。

-Wshow: 不足欧文フォントの自動生成やGhostscript起動の際に、Windowsを開きます。

Reverse page_up/down ツールバーのページ番号入力ボックスでのページジャンプの矢印による増減を逆にします（[OK], [Apply] で適応され、次回にも有効になります。mode による区別はありません）。

-file: 読み込むパラメータファイルを指定します。


Property Sheets->[System] の Reverse page_up/down

ツールーバーのページ番号入力ボックスでのページジャンプの矢印による増減を逆にします（[OK], [Apply] で適応され、次回にも有効になります。mode による区別はありません）。


[REGISTRY]
[REGISTRY] <- Property Sheets

起動の時などにおけるRegistryからのパラメータの自動読み込み、あるいは、それの解消を設定します。

プロパティシートに入って、最初にこのシートを選択したとき、リストボックスに + がついているパラメータが、現在のモードで自動読み込みされるものです（デフォルトでは、すべてのパラメータが自動読み込みとなります）。

 [Auto Load]　[REGISTRY]のリストボックスで選択したパラメータに、自動読み込み指定の目印 + をつけます。

 [Ignore]     リストボックスで選択したパラメータから、自動読み込み指定の目印 + を消します。

 [REGISTRY]での[All Set]      リストボックスのすべてのパラメータに、 + の目印をつけます。

 [REGISTRY]での[All Clear]     リストボックスのすべてのパラメータから、 + の目印を消します。

注意： ここで設定したパラメータの自動読み込みは、このシートの[Save]ボタンを押して初めて有効になります。このシートの[Restore]ボタンにより、自動読み込みが設定されているパラメータがわかります。

 [REGISTRY]での[Save]  設定をRegistryのcurrent modeの場所に保存します。+ をつけたパラメータは、起動時の mode がcurrent modeのときに、その値が自動的に読み込まれます。

 [REGISTRY]での[Restore]  Registryのcurrent modeから、起動時に読み込みを設定したパラメータのリストを得て、リストボックスで表示されているパラメータに + をつけて表わします。
現在の設定を変更するときは、最初にこのボタンで現在の設定を得、それに修正を加えて保存するとよいでしょう。

注意： [Apply], [OK]のボタンは[REGISTRY]のシートでの設定に関しては無関係です。

--------  Selected mode  ----------
   Default mode:     起動時のmodeを指定します。このmodeに対して自動読み込みを指定したパラメータとその値とがRegistryから起動時に読み込まれます（実際は、[Save]ボタンを押して初めて、設定が行われます）。

   Current mode:     current modeを変更します。これは（[Apply]や[OK]のボタンを押さなくても）現在のdvioutに反映されます。Property Sheetsの各ページでのパラメータの値のRegistryへの[Save], [Restore]は、この mode に対するRegistryになされます。

   Current Print:    dvioutが上で設定したcurrent modeにあるとき、印刷を行う際にここで設定したmodeに変わります（これも、[Save]ボタンを押さないと有効にはなりません）。
たとえば、previewと印刷とでdpiを変更したり(cf. Q_P6)、印刷のときのみPostScript \specialをGhostscriptによって解釈する、などということが可能になります。ただし、コンソール版dviprtなどの外部プログラムを使う印刷のときは、この設定は無視されます。

   Current Name:   current modeにラベル名をつけて目印とします。これは、Option -> Mode での mode変更のダイアログで表示されます。


Registry
Registryは、Win32のシステムやプログラムにおける各種パラメータ情報を保存するため、Win32によってサポートされているもので、実際にはディスク上にデータベースのような形式でその情報が記録されます。

dvioutは、Registryの HKEY_CURRENT_USER\Software\SHIMA\dvioutの下に情報を保存します。多くのパラメータは、各modeに対応して、10箇所の異なった場所に保存されますが、それはさらに　...\SHIMA\dviout の下のpara0,...,para9 という場所に対応しています。

para0,...,para9 : mode0,...,mode9の各パラメータが、パラメータ名のキーとその値で（整数型あるいは、文字型データとして）格納されている。

FILE : ファイル名のヒストリ。0,...,15の16個までのキーで、最も古いものが 0。
Fontのキーに、よく使われるフォントと対応するディスク上のフォントファイルのデータがパックして入っている。
Freqのキーは、各フォントの使われた頻度のデータが入っている。最初の1byteがバージョン番号、次の1byteがFontキーの非更新回数、次の2byteがFontキーの値のサイズ、その次の2byteがデータの個数。

FIND : 文字列サーチに使われた文字列のヒストリ。0,...で、0 が最新のもの。

KeyTable : キー機能の定義がbinaryの形で入っている。

Settings : dvioutのWindowのサイズや位置、Loupeのプロパティーなどを格納したキーがある。


Selected mode
起動時のmode, current mode, 印刷時のmode の変更と current modeの名前付け、を行います。

より詳しくは、Property Sheets->[REGISTRY] を参照してください。


Current Name:
Property Sheets の [REGISTRY] において、Current mode: にラベル名をつけて目印とします。これは、Option -> Mode での mode変更のダイアログで表示されます。


Current mode:
Property Sheets の [REGISTRY] で、current modeを変更します。これは直ちに現在のdvioutに反映されます（パラメータの設定値の読み込みはされません）。

Property Sheetsの各ページでのパラメータの値のRegistryへの[Save], [Restore]は、この mode に対するRegistryになされます。


Default mode:
Property Sheets の [REGISTRY] で、起動時のmodeを指定します。このmodeに対して自動読み込みを指定したパラメータとその値とがRegistryから起動時に読み込まれます（実際は、[REGISTRY]での[Save]ボタンを押して初めて、設定が行われます）。

コマンドラインパラメータ-mode:で

dviout -mode=2

のように指定することにより、Default mode:での設定の後、指定したmodeで上書きされます。


Current Print:
Property Sheets の　[REGISTRY] において、dvioutがCurrent mode: にあるとき、印刷を行う際にここで設定したmodeに変わります（[REGISTRY]での[Save]ボタンを押さないと有効にはなりません）。

たとえば、previewと印刷とでdpiを変更したり(cf. Q_P6)、印刷のときのみPostScript \specialをGhostscriptによって解釈する、などということが可能になります。


[Auto Load]
Property Sheetsの[REGISTRY]のシートで、リストボックスで選択したパラメータに、自動読み込み指定の目印 + をつけます。


[Ignore]
Property Sheetsの[REGISTRY]のシートで、リストボックスで選択したパラメータから、自動読み込み指定の目印 + を消します。


[REGISTRY]での[Save]
Property Sheetsの[REGISTRY]での設定をRegistryのcurrent modeの場所に保存します。+ をつけたパラメータは、起動時の mode がcurrent modeのときに、その値を自動的に読み込むように設定されます。


[REGISTRY]での[Restore]
Property Sheetsの[REGISTRY]で、Registryのcurrent modeから、起動時に読み込みを設定したパラメータを調べて、リストボックスで表示されているパラメータに + をつけて表わします。


[REGISTRY]での[All Set]
Property Sheetsの[REGISTRY]のリストボックスのすべてのパラメータに、 + の目印をつけます。


[REGISTRY]での[All Clear]
Property Sheetsの[REGISTRY]のリストボックスのすべてのパラメータから、 + の目印を消します。


[REGISTRY]のリストボックス
[REGISTRY]のリストボックスのパラメータのリストで、 + のついているものは、[REGISTRY]での[Save] ボタンを押すことにより、起動時のデフォルトに設定できます。

・現在の設定状況は、[REGISTRY]での[Restore]で取得されます。
・+ の削除／付加は [REGISTRY]での[All Clear], [REGISTRY]での[All Set], [Ignore], [Auto Load] で行います。
・起動時のmodeなどは、Selected mode で設定します。


・プレビュー画面(Q_V)

・フォント(Q_F)

・印刷(Q_P)

・パラメータ(Q_S)

・画像データ(Q_G)

・エラーメッセージ(Q_E)

・Windows95/98/NT上での操作(Q_W)

・そのほかのトラブル(Q_T)

・そのほかの疑問(Q_O)

 参考：Help → Troubles in dviout


パラメータ
dvioutの起動時の各種パラメータは、以下の順に読み込まれ、矛盾する設定があれば、より後のものが優先されます。

1. dviout.exe のディレクトリに入れた dviout.par というパラメータファイル
   これが見つからないと、Windowsのディレクトリも探されます。
2. Registryに書かれ、自動読み込みが設定されたもの
3. 環境変数に設定されたもの
4. コマンドラインで指定したもの

また、パラメータ中に -file: でパラメータファイル名を具体的に書くと、それが解釈された時点で、そのパラメータファイルが読み込まれます。

パラメータファイルの書式については、Q_S3 をご覧ください。

コマンドラインで -NULL というオプションパラメータを指定すると、Registryからの読み込みがスキップできます。

パラメータのリストで全パラメータが一覧できます。また、パラメータの設定例が参考になるでしょう。


-Jfm:
dviout内蔵のjfmデータを用います（Property Sheets->[JFont2]）。ON/Offで指定するパラメータです。

内蔵されているのは、min*, tmin*, goth*, tgoth*, newmin, newgoth, jis, jisg, jis-v, jisg-v の和文フォントです。


-Jbt:
和文TrueTypeフォントを使うとき、baseline位置をjfmにおけるデフォルト文字型のdepth:heightに応じて調整するかどうかを指定します（Property Sheets->[JFont2]）。ON/Offで指定するパラメータです。

Offのとき、あるいは、depth:heightがmin10.tfmやjis.tfmなどにおける値と等しいときは、TrueTypeフォントにおけるbaselineはTeXにおけるbaselineとなります。


-Jgt:
和文TrueTypeフォントの文字の位置調整を、jfmファイルのglue情報に基づいて行うためのスイッチです（Property Sheets->[JFont2]）。

一般に約物などの幅の狭い記号ではTeXでの文字幅が狭くなっていますが、Windowsの等幅和文TrueTypeを使った場合はそれより広いので、そのときの位置の決め方を指定するものです。

OFF: デフォルトの調整
使われる狭い記号がTrueTypeの文字枠の右端にあると見なすもの
  ‘ “ （ 〔 ［ ｛ 〈 《 「 『 【

使われる狭い記号がTrueTypeの文字枠の左端にあると見なすもの
  ， ． 、 。 ° ′ ″ ゛ ゜ ’ ” ） 〕 ］ ｝ 〉 》 」 』 】

上記以外は、中央にあると見なす

ON: その文字がjfmでの基準文字（漢字）の後ろに来た場合に設定されているjfmでのglueの値とそのplusの値の合計値を位置調整の値とする。
これは、MS P 明朝などのプロポーショナルフォントには不適切。


-A:
必要な解像度に対応するフォントのサーチ範囲を拡大します(cf. Property Sheets->[Font2])。0または正の整数を指定します。

dvioutが計算したフォントの解像度は、フォント名とあわせて -TEXPK: の指定に基づいて必要なフォントを得るために用いられます。解像度の値は整数に丸められて -TEXPK: の中の ^d や ^l に代入されますが、誤差の問題があるので、その上下の合計3つの値について近いものからサーチされます。このサーチ範囲を -A: で指定した数だけ拡大します。

例 -A:4

とすると、上下合計７つの値までサーチ範囲を拡大します。


-area:
Windowsのプリンタドライバを使った印刷を行う場合、印刷不能領域の幅について、そのドライバのデフォルトの値を用います(Property Sheets->[Printer])。これによる印刷位置の調整が正しくない場合は、チェックをOFFにして -LM: -TM: などで調整します。

dviout内蔵のドライバを用いるときは、このパラメータは無視され、-LM: -TM: などの設定値に従います。

ON/OFFを指定するパラメータです。


-base:
各文字のbase lineを表示します（Property Sheets->[System]）。ON/OFFを指定するパラメータです。
これは、校正などのチェック用。


-bb:
ページのイメージを展開するためのバッファの許容最大サイズ（Property Sheets->[System]）。正の整数を指定します。


-bf:
PKフォントなどのフォントファイルのキャッシュ用のバッファのサイズ（Property Sheets->[System]）。正の整数を指定します。


-BM:
紙面下端の印字不能領域の幅を表わします。長さで指定するパラメータです。

通常は設定不要です(Property Sheets->[Printer])。


-BMP:
-BMP: は、コマンドラインやパラメータファイルで指定するときのオプションで、Property Sheets では、[Display]で設定します。

-BMP:<x>:<y>:<z>  とすると、横方向に、1/<x>、縦方向に 1/<y>に縮小した gray scale 表示を行い、<z>/1000 という値でガンマ補正を行います。
<z>の代わりに -<z>とすると、反転画面表示になります。

:<z> を省略すると、<z>=800 と解釈され、:<y>:<z>を省略すると、<y>=<x>と解釈されます。デフォルトは

-BMP:4:4:800

です。


-box:
文字の代わりにその文字の占める範囲を「箱」に変えて組版します（Property Sheets->[System]）。ON/OFFで指定するパラメータです。
校正などのチェック用。


-br:
各文字のビットマップデータなどを保存しておくキャッシュバッファのサイズ（Property Sheets->[System]）。正の整数を指定します。


-bright:
プレビュー画面の紙面の明るさを調整します。最も明るい255がデフォルトです（Property Sheets->[Display]）。255以下の正の整数を指定します。


-Browser:
HyperTeXでの外部参照のときに、Windowsのシステムがデフォルトでサポートしているブラウザ以外のものを用いるときに、（Property Sheets->[HyperTeX]->nod-default Browserをチェックし）そのパス名を指定します。


-button:
ツールバーのボタンのデフォルトを Forward/Backward History などのジャンプに関連したものにします（Property Sheets->[System]）。ON/OFFで指定するパラメータです。


-c:
オプション-c: をONにすると、dviファイルに書かれているフォントと、実際にロードしたフォントとの整合性を、チェックサムのデータを用いて調べます(Property Sheets->[Font2])。ON/OFFを指定するパラメータです。

不整合があると

check sum doesn't match in Font 35:

のような表示が出ます。

Fontの後の数字は、dviファイルの中でのフォント番号です（cf.情報表示->フォント情報）。

このエラーは、TeXが使用したtfmファイルと、ロードした実際のフォントのデータとがマッチしていないことを意味します。その2つのファイルのバージョンが異なっているとき発生するエラーです。


-cmode:
文字や線の色付けが重なった場合の処理を定めます。整数型のパラメータで、0, 1, 2, 3, 4, 5, 6の値をとります(Property Sheets->[Graphic])。画像については、-gow:で設定します。

0(auto mode(p2)): 原則はREPLACE（重ね塗りのときは、下の色が隠れる）ですが、下の色を消すことが不要と推測される場合は、消さずに塗られます。なお、dviprt機能を使わない印刷のときは自動的に patch2 モードに、プレゼンテーション・モードのときは replace(bak) になります。

1(merge)    : 重ね塗りのときは、（color specials で r サブオプションが付いていない場合）色を混ぜます。混ぜていくと通常の文字の色（反転画面でないときは黒）に近くなります。

2(replace(def)): 常にREPLACEで処理します。デフォルトの紙面との間で、アンチエリアシングを行います。印刷のときは、次項との差はありません。

3(replace(bak)): 常にREPLACEで処理します。push の一つ前の色を背景色と考えて、アンチエリアシングを行います。

4(patch)    : 文字や画像毎にREPLACEの処理をします。表示は遅くなります。dviprt機能は使えません。

5(patch2)   : 文字や画像毎にREPLACEの処理をします。TrueTypeフォントや線などを直接画面やWindows driverに出力します。このときは、Loupeやdviprt機能が使えません。Windowsドライバを使った印刷で、TrueType fontのみを使った場合、dviverによっては大幅に高速化されます。
TrueTypeフォントでも、[WinJFont]でslant（斜体）の設定をされた文字、および、回転とスケーリングの両者を同時に指定した文字については、直接出力でなく、文字画像を作成してから張り付けるpatchのモードと同様な処理になります。
単なる回転やスケーリングをしたTrueTypeの文字は直接出力されるため、他のモードより良好な品質が期待されます。

6(auto mode(rep)):auto mode(p2)と同様ですが、dviprt機能を使わない印刷のときは自動的に replace モードになります。

注意: 色付けされた文字に対してアンチエリアシング（白黒のときの gray scaleに対応するもの）がなされ、縮小して表示するプレビュー画面でのカラーの文字のかすれを無くします。REPLACEのときの対応には不十分な点があるので、文字の輪郭が薄い色になることがあります。


-color:
-color: を ON にすると、以下の \special による文字や線の色付けが可能になります(Property Sheets->[Graphic])。

color push gray x
color push rgb x y z
color push cmyk x y z n
color push hsb x y z
color push color
color pop
background <col>

がサポートされます。x, y, z, nは 0 と 1 の間の実数で、colorは、Black, White, Red, Green, Blue, Cyan, Magenta, Yellow などの68色の何れかです。<col> には、その上のpush 以下の色指定を使います。色指定の区切りには、空白や「,」が使えます。

色の重ね塗りをAND演算で行うと、例えば、Greenの上にYellowで書いても見えず、Redで書くと黒になりますが、各specialの最後に r サブオプションを付加すると、REPLACEとなって置き換えになります。ただし、Whiteは常に置き換えです（cf.-cmode:）。

LaTeX2e の graphicx.sty での dvips 用の色付け指定に対応しています。ツールバーの Display -> Color replace をチェックすると、デフォルトがREPLACEになります。

注意：これらの定義は、各ページ毎に独立しているとみなされます。


-dpi:
使用するフォントの横方向の解像度の dpi の値を設定します（Property Sheets->[Resolution]）。正の整数を指定します。

縦方向の解像度（-dpiv:）を指定しなければ、縦方向も同じ解像度とみなされます。


-dpiv:
縦方向の解像度を指定します。指定しなければ、-dpi: で設定した横の解像度が縦の解像度に等しいとみなされます（Property Sheets->[Resolution]）。


-dviprt:

Windowsのドライバを使わずにdviout側のドライバを使って印刷する、あるいは、コンソール版dviprtなどの、ほかのプログラムを呼び出して印刷などを行うやり方を定義します。

デフォルトの変更
+  Property Sheetsの[Printer]での-dviprt:の先頭に + をつけると、dviprt の設定による印刷がデフォルトになります.

印刷ダイアログから[Setup...]を読んだときの表示には、先頭の + 削られているので、付加しないようにしてください。ここでも変更可能ですが、それは一回限りの一時的な変更とみなされ、記録はされません。

dviout内蔵のプリンタドライバを使用
`    先頭が `、あるいは、+` の場合は、dviprt機能による印刷のとき、内蔵のドライバを用います。それに続く文字で機能が決まります（MS-DOS版の -p=  に続く指定に準じます）。
`e    ESC/P対応の出力（デフォルト 180dpi）。
`p    PC-PR対応の出力（デフォルト 160dpi）。
`n    NM対応の出力（デフォルト 300dpi）。
`l    LIPS III対応の出力（デフォルト 300dpi）、続けてサブオプション指定できる。
`lD600 LIPS IV対応の出力（デフォルト 600dpi）、; をはさんでその後サブオプションを指定できる。
`m    ESC/Page対応の出力（デフォルト 300dpi）、続けてサブオプション指定が出来る。
`o    外部コンフィギュレーションファイルを続けて指定する。
さらに、上のe,p,n,l,m,oを大文字にすると、dviout側の設定でなく、それぞれに定義されたデフォルトの解像度(dpi)を用います。
LIPS III/IVやESC/PageのLBP用ドライバに関しては、サブオプションが指定できます。

外部のプログラムを制御
先頭が ` あるいは +` でない場合は、実行コマンドを表します。具体的には、バッチファイルを作成して、それに処理を任せます。
ただし、マルチステートメントなしで１行のみであって、コマンドパラメータを除いた最初のコマンドの最後が .exe の時は、バッチファイルを作成せずに直接実行します。
以下のキーワードを使うことができます。
;    マルチステートメントでの改行を表します。
^t  自由に使用可能なテンポラリファイルのフルパス名（環境変数TMP またはTEMPが設定されていれば、そのディレクトリ、それが存在しなければ、dvioutの存在するディレクトリのdvitmp.$$$）。
^q  対象のdviファイルのフルパス名
^d  上記から .dvi を除いたもの
^D  ^q から .dvi とディレクトリ名を除いたもの
^p  dviprtの書式での印刷する範囲（袋綴じのときは、マクロが含まれることもある）
^P  これは dviprt.exe^-=^f^^q^^p を表す。
^f  オプションパラメータ（-harf: -mag: -lc: -Z: -OX: -OY: -varf: -e: -o: -y: -nf: のうちでdvioutが必要と判断したもの。たとえば、-OX: は、0でない場合に必要と判断されます。ただし、-y: を常に含む）を書き出したファイル。
具体的には、^tと同じディレクトリのdvitmp.parというファイル。
^S ^ 自身を表す。
^s 空白を表す。続く文字がアルファベットでなければ、sは、省略してもよい。
^A 開始ページ（論理ページ）
^B 終了ページ（論理ページ）
^a 開始ページ（物理ページ）
^b 終了ページ（物理ページ）
^c コピー部数（-lc: に対応）
^e 縮小／拡大率（-e:に対応）
^m Printのダイアログでの Option for Paging で選択したものを示す（0から5までの数字）
^n 袋綴じのときの右のページの位置を示す（printのダイアログの W: に対応。14.85cm などという cmで示した幅）
^y 用紙サイズと向き（-y:に対応、A4Pなど）
^h 横位置調整（-OX:に対応し、1.25cmなどのようなcmの形式。）
^v 縦位置調整（-OY:に対応し、cmの形式）
^o 印刷するページの順など（-o: に対応し、r, o, e, re, roまたは、空の６種のうちの何れか）
^x 起動されているdvioutの存在するディレクトリ
^W dvips用のページサイズと向き、odd/even/reverse、オフセット（-OX: -OY:）指定パラメータ
^w dvipdfm用のページサイズ（A3-6, B3-6, Letter, Legal)と向き、オフセット（-OX: -OY:）指定パラメータ
^Z または ^Z^n^{...}^{...} 以降はメッセージ文としてダイアログに表示される。; は改行記号で一箇所のみ可。n は整数で、各ビットに対する機能の On/Off は以下の通り（未定義のビットは Off にしておくこと）。
   1: Collate copies
   2: Reverse order
   4: Copies
   8: + ボタン
  16: Optionボタン
  32: 袋綴じ印刷
  64: 拡大縮小
^{...} は、ユーザが選択可能なオプションで、... の部分はダイアログに表示される文字列。2つまで指定できる。順に、^X{...} と ^Y{...} に対応。
^z または ^z^n^{...}^{...} 上記と同じだが、外部プログラム実行時に Window を開く。
^X{...} 最初のオプションのチェックがないと、... がスキップされる。
^X}...{ 最初のオプションのチェックがあると、... がスキップされる。
^Y{...} 2番目のオプションのチェックがないと、... がスキップされる。
^Y}...{ 2番目のオプションのチェックがあると、... がスキップされる。

-dviprt: が空のとき、あるいは、+ のみの場合は、デフォルトの設定になります。-dviprt の設定例、および、使用するdviprtのマニュアルを参照してください。


-e:
縦横のサイズの拡大／縮小を行います。WindowsのTrueTypeフォントのような可変サイズのフォントは、それに応じて拡大／縮小が行われます。指定した値の1000分の1倍に縦横のサイズが変換されます(Property Sheets->[Resolution]）。正の整数または0を指定します。

0は、リセットを意味します。

すべてのフォントに対し、-e: に合わせて拡大／縮小を行うには、-varf: を指定します。


-edge:
Presentation Menu の Cut edge で、各ページ共通に上下左右の余白を削った表示がされますが、このとき上下左右に残す余白をドット数で指定します(Property Sheets->[Paper]）。
ページRangeが設定されていれば(Alt+JM, Alt+JR)、その範囲のページに限ります。

デフォルトは16です。


-F:
-F の指定は、（-TEXPK:に基づいた検索で）必要なフォントが存在しないとき、どのように代替を行うか、あるいは空白を開けてスキップするか、などを定めます（Property Sheets->[Font])。文字列で指定します。


-FB:
-F:でのフォントの代替に関連し、代わりのフォントを用いるか、その場合大きさが異なっていれば大きさの修正を行うか、あるいは、空白や黒の箱で置き換えてしまうか、を指定します（Property Sheets->[Font]）。

整数型の変数なので、パラメータファイルでは数字で指定します。

0(replace): -Fで指定した代替フォントを用いる
1(blank): -Fで指定した代替フォントを元に空白を空ける
2(black box): -Fで指定した代替フォントを元に黒の箱を描く
3(adjust size): -Fで指定した代替フォントを用いるが、解像度（dpi）が異なるとき拡大／縮小を行ってサイズを調節する


-file:
dviout が読み込むパラメータファイルを指定します(cf. Q_S3)。
Property Sheets の [System]で指定して、起動時に読み込むように設定した場合は、Registryからパラメータを読み込んだ後に、このパラメータファイルからの読み込みがなされて、上書きされます。

パス名の先頭に ^x をつけると、それはdvioutのインストールされたディレクトリが代入されます。一方、^w には、Windows のシステムディレクトリが代入されます。

起動時には、起動したdviout.exeの存在するディレクトリのdviout.par, dviout.ini が探され、次にWindowsディレクトリのdviout.par, dviout.ini が探されます（見つかると、それ以上探さない）。

ネスティング7段までが可能です。


-Fkeep:
よく使うフォントの所在の記録を自動保存することにより、dvioutの立ち上げを高速化するか(ON)どうかを指定します(Property Sheets->[Font2])。

特に -TEXPK: で、\\や//を用いている場合に有効です。
記録を強制的に消去するには、[Flush]ボタンを押します。

次のようなフォントの所在は記録されません。

1. \\や//が２つ以上含まれている-TEXPK:の指定にマッチした場合（-TEXPK:の全体には２つ以上含まれていてもかまいません）

2. 起動時と異なる -TEXROOT: あるいは -TEXPK: の場合

3. -F:によって代替を受けたフォント

フォント名とその解像度の組に対し、よく使うかどうかの評価関数の値は、255以下の非負整数で、値の大きなものから最大400個のフォントファイルの所在が記録されます。ただし、使われたかどうかは、dviout終了時に表示していたdviファイルで判断されます。
同じ値の場合、過去に溯って差があれば、差のある一番近い過去で判断されます。

1. 記録になくて使われた場合 64

2. 記録にあって使われた場合、前回の終了時の値 x 15/16 + 16 の整数部分

3. 記録にあって使われなかった場合、前回の終了時の値 x 15/16 の整数部分


-ftt:

TeXのフォントに対して、使用するTrueTypeフォントの対応付けを書いたファイルを指定します(Property Sheets->[Font2]）。

各行毎に、TeXのフォント名と対応するTrueTypeフォント名（[WinJFont]のjfm/tfmの項にあるもので指定）を空白（タブでも可）で区切って指定します。フォント名が空白を含むときは、" "で囲みます。

なおサブフォントを使って変換するときは、SFDファイルの所在を -TEXSUBF: で指定し、TeXのフォント名の最後の2つの数字を @ で置き換えたものと、対応するSFDファイルの拡張子 .sfd を @ で置き換えたものをつなげて TeX のフォント名の代わりに指定します。

対応するフォント名に空白を空けずに / を書き、それに続けて I, B, U, O, R, C の文字のいくつかを書くと、それぞれ、Italic, Bold, Underline, StrikeOut, Regular, unicode を意味します。ただし、U, O は、[Graphic]->color mode: の -cmode: が patch2 のときのみ有効です。

さらに (<num>) と数字を括弧で囲んで書くことにより、character_set の番号が指定できます。また[<num>]という指定で、code pageの番号が指定でき、unicodeへの変換に用いられます。なお、-2 というcode page で、CID code を表します。

上記は、フォント名の後に空白を空け、Italic, Bold, Underline, Regular, UniCode, JIS2Uni, CID2Uni などを書き、character_setは ANSI, Arabic, Baltic, ChineseBig5, default, EastEurope, GB2312, Greek, Hanguel, Hebrew, Johab, Mac, OEM, Russian, ShiftJIS, Symbol, Turkish, Thai, Vietnames のいずれかを書いて指定できます。
JIS2Uni, CID2Uni は、それぞれ JIS code, CID code から unicode へ変換を意味します（これを指定したときは、UniCode の指定をしてはいけない）。
大文字、小文字は区別されません。たとえば、次のように書きます。

%sample
wtmr    "Times New Roman"       regular
wtmri   "Times New Roman"       italic
wtmb    "Times New Roman"       bold
wtmbi   "Times New Roman"       italic,bold
symbol   symbol                 unicode,symbol
min10   "ＭＳ 明朝/[936]"       unicode,shiftjis,Italic
jbtm@UKS@  Gulim                unicode

これは、以下と同じです。

%sample
wtmr    "Times New Roman/R"
wtmri   "Times New Roman/I"
wtmb    "Times New Roman/B"
wtmbi   "Times New Roman/IB"
symbol   symbol/C(2)
min10   "ＭＳ 明朝/IC[936](128)"
jbtm@UKS@  Gulim/C

対応するフォント名に、欧文TrueTypeフォントのパス名を指定することができます。このときは、dviout自身がTrueTypeフォントを展開します（-TEXPK: で対応するtfmファイルが該当し、-TEXFONTS: にそのディレクトリが指定されていることが必要です）。例えば

wnsr8r	^w\fonts\times.ttf

とします。コード変換として、2 byteテーブルを用いる場合（BaKoMaやTimes New Romanなどに適）は /1 か、あるいは、Symbol フォントの場合は /5 を指定します。1 byte テーブルを用いる場合（ImpressやTeX用のいくつかのものに適）は、/4 を指定することができます。但し、/の後の数が 256 より大きい場合は、code page番号の指定と見なされます。
例えば、以下のように指定します。

wnsr8r	^w\fonts\times.ttf/1

TrueTypeフォント名の欄に - とのみ書くと、TrueTypeフォントを使わないことを意味します。

なお、先頭の空白を除いた最初の文字が ; % # のいずれかがである行は無視されます。ただし、先頭が # の場合は、propw（付属のプログラム）で読み込むときはパラメータ指定と解釈されます。

Unicode の指定をしたフォントの定義は、Windows2000/XP またはそれ以降以外では読み飛ばされます。

%skip という行があると、%endskip という行が見つかるまでの行も無視されます（このとき、skipの後には空白を入れない）。

%input の後に空白を空けてファイル名を指定することにより、他のファイルを読み込むことができます（元のファイルと同じディレクトリに置きます）。ファイル名が $ で始まっていれば、それが存在しなくてもWarningのメッセージを出しません。添付の ttfonts.map には

%input $user.map

の行があるので、$user.map を作成して独自の追加の情報を入れれば（そこに %input を書いてもよい）、独自の追加変更が可能で、dviout の上書きバージョンアップでも保たれます。

このファイルで指定された対応による変換を行ってから、[WinJFont]の対応で探されるので、対応づけられるフォント名は[WinJFont]のjfm/tfmの項で定義されていなければなりません（edefaultが定義されていればWindowsに登録された任意のものでよい。cf. Q_F14）。

注意: dviout ではデフォルトのファイル ttfonts.map が添付されています。独自のものを使用する場合は別の名前を使ってください（インストールで ttfonts.map は上書きされます）。


-g:
横書用の和文フォントを縦書き用にも代用する(Property Sheets->[JFont2])。ON/OFFで指定。

Windows の縦書用の和文TrueTypeフォントをAPIを使って得ている場合（デフォルトの[WinJfont]における設定）は、チェック不要。


-gbox:
グラフィック画像の取込において、その画像の外枠を表示することができます（Property Sheets->[Graphic]）。ON/OFFを指定するパラメータです。


-gclip:
EPSF画像の取り込みの際、BoundingBoxでクリップします。ON/OFFで指定します。ただし、-gow: が ON のときはこのオプションの如何にかかわらず、クリッピングが常になされます。


-gdat:
Ghostscriptの出力としてdvioutが扱うPBMまたはBMPファイルが置かれるディレクトリは、デフォルトではカレントディレクトリ（dviファイルの存在するディレクトリ）ですが、これを-gdat: で設定することができます（Property Sheets->[Graphic]）。

dvioutが読み込む EPSF/PS/PBM/BMP などのファイルのサーチパスとしても、参照されます。複数指定する場合は、; で区切ります。このときは最初のものは、dvioutが一時的に作成するPBMまたはBMPファイルが置かれるディレクトリにもなります。

パス名に空白が含まれる場合は、ショートパス名形式で記述してください。


-gen:
gen=<template_file>  というオプションで、フォントの作成と格納の方法を書いたフォント作成のテンプレートファイルを指定すると、dvioutがフォントを見つけられなかった場合に、METAFONTを起動して、不足しているフォントの自動生成を行うことができます（cf. Q_F6, Property Sheets->[Font2])。

基本的なフォント作成手順／環境は、あらかじめテンプレートファイルに設定しておく必要があります。dvioutは、テンプレートファイルの設定に従って必要なフォントの名前やサイズなどのデータを挿入したバッチファイルを作成し、実行します。当然、メタフォントが既にインストールされていて、正常に動作している環境が必要です。

mktexpkやMakeTeXPKを使う場合のように、１つのコマンドでフォントの生成が可能なときは、テンプレートファイルを用意しなくても、` を先頭に着けてコマンドを直接指定できます。実行ファイル名はフルパス名での記述がよい（パス名に空白が入るときは、ショートパス名で）。

また、METAFONTソースが見つからない、あるいは設定パラメータにミスがあった場合など、自動生成できなかったフォントについては、必要なルーチンをまとめて別のバッチファイルに出力して手作業で必要なフォントの生成ができるようにしています。


-gfit:
PostScriptのカラー画像は、GhostscriptによりBMPファイルに変換されますが、gray scaleを使う縮小サイズにおけるプレビューで、縮小したサイズで生成する(ON)かどうかを指定します(Property Sheets->[Graphic])。

ON/OFFで指定するパラメータです。

OFFの欠点： 使用するフォントのdpiが大きい場合、カラーBMPファイルのサイズが大きくなり、ある限界を越えると、表示に極端な時間がかかることがあります（Windowsの仕様のようです）。

表示の際の縮小は、Windowsが行うので、線などが消えたりかすれたりすることがあります。

メモリーやディスクのワークスペースが多く使用されます。

ONの欠点： ルーペで見た画像は、本当に拡大するので、奇麗ではありません。またdpiが大きい場合、このカラー画像の拡大に失敗することがあります（多分Windowsの仕様）。

プレビューのスケールを変換したときや、印刷のときは、対応する解像度のcolor BMPファイルが再度作成されます。


-GIF:

Ghostscriptを用いdvioutが生成し、利用する画像ファイルの形式を指定します(Property Sheets->[Graphic])。整数型の変数なので、パラメータファイルでは、0 から 5 までの整数で指定します。

0(raw PBM)       : 白黒画像のみの場合や、カラーでないプリンタ出力に適します。
1(monochrome GIF): 最近の Ghostscriptではサポートされていません。
2(monochrome BMP)
3(16   color BMP)
4(256  color BMP): カラーや白黒画像を共に扱うプレビューに適します。
5(full color BMP): 微妙な色を使うカラー印刷に適します。

上記は、Gostscript で -sDEVICE= のオプションに、それぞれ pbmraw, gifmono, bmpmono, bmp16, bmp256, bmp16m として起動します。

使用する Ghostscript でサポートされているもののみが設定できます（-help オプションをつけて Ghostscriptを起動すると、サポートされている画像フォーマットが分かる）。

注意：多色BMPを用いてカラー画像を扱う場合、（特に画像が大きいほど）多くのメモリーやハードデスクの空きが必要となります。

注意：-sDEVICE=bmp16オプションをつけて、Ghostscriptを起動した場合、16色BMPのフォーマットでなくて、256色BMPのフォーマットで16色のみを使った出力になる（あるいは、そのようなものがある）ようです。
このような場合、16色モードから256色モードに切り替えても、dvioutはBMPファイルの更新を行わず、16色BMPをそのまま使います。
16色BMPモードから256色BMPモードに変更する場合は、16色BMPファイルを削除するか、あるいは、16 color BMP -> monochrome BMP -> 256 color BMP と変更してください。


-gow:
画像の描画は、通常下にある文字や画像を残してその上に描かれますが、これをONにすると、下のものを消してから描画されます(Property Sheets->[Graphic])。

この場合、EPSF画像の取り込みに関しては、常にクリッピングが指定されているとみなします(cf.PostScript specialのパラメータ)。

文字については -cmode: で、replace を設定するのに対応します。


-GS:

PostScript specialsや、PS/EPSファイル、PBMファイル、BMPファイルなどに対する処理を指定します(Property Sheets->[Graphic])。

以下の指定が可能です（整数型パラメータなので、パラメータファイルでは以下の数字で指定します）。

PostScript のコードが直接埋め込まれた specials を無視する設定(DirectPS の Off)の場合は、以下の値に 16 を足したものが -GS: の値となります。PSfrag はこの設定の如何にかかわらず無視されない。

0(Off): 無視する

1(On): EPS/PSファイル、PSコード、PBMファイル、PBMファイルに関連した special命令に対応します。Ghostscriptを呼び出す必要があって、それが見つからないときは終了します。

2(verbose): EPS/PSファイル、PSコード、PBMファイル、PBMファイルに関連した special命令に対応します。

3(PBM): Ghostscriptは起動しません。
対応するPBM(または、BMP)ファイルが存在していればそれを用い、存在しなければスキップします。
この場合、必要な画像データファイルとドットサイズが異なっていても、適当に拡大/縮小のスケール変換をします。
横のサイズは、バイト幅(8ドット単位)に切り上げで直したときに同じならば等しいと見なします。

4(exact PBM): Ghostscriptは起動しません。
サイズも含めて対応するPBM(または、BMP)ファイルが存在していればそれを用い、存在しなければ、スキップします。

5(gssub): Ghostscriptは起動しません。
前項4と同様ですが、必要な画像データファイルが存在しないときそれに対してEPS/PSファイルから（dvioutが取り込む)PBMまたはBMPファイルへの変換を行なうバッチファイルgs_exec.batとPSファイルgs_exec$.psを作成します。付属のgssub.exeが必要です。

既にgs_exec.batやgs_exec$.psが存在する場合には、以前の内容の末尾に追加しますので、必要に応じて起動前にgs_exec.batとgs_exec$.psとを消去しておいてください。

作成されるバッチファイルは、必要なPBM（またはBMP）ファイルのうち存在しないものだけを変換しますので、このバッチファイルを起動すれば、次回からdvioutはPBM（またはBMP）ファイルを直接読むことができます。
ただし、同じEPSファイルから複数回異なるサイズで画像を生成していたり、直接PostScriptのコードが\specialに書かれている場合は、生成されたバッチファイルでは対応できません。


-gsize:
EPS/PS画像の取り込みのサイズは、PostScript specialsのパラメータで指定されます。dviファイルのmagnificationの値が1000でない場合（例えば、TeXのソースに

\mag=\magstep1

などと書かれていた場合)、PostScript specialsに書かれた取り込みサイズをこのmagnificationを行った後のサイズとする場合には、-gsize: のスイッチをONにします（Property Sheets->[Graphic]にあるON/OFFを指定するパラメータです）。

特に、magnificationが1000以外のdviファイルでepsbox.styなどを用いた画像取り込みを行なうときは、-gsize:を指定してください。

epsbox.styを使うと、magnificationに応じてスケール変換した PostScript specialsが生成されます。これとdvioutにおけるスケール変換とで、二重にスケール変換されて正しいサイズでなくなることを防ぐことができます。


-gsx:
dvioutがPostScriptを解釈するとき用いる Ghostscriptは、gswin32.exe というファイル名で、パスの通ったディレクトリに存在するというのがデフォルトですが、パスを含む起動コマンド名を-gsx: により変更できます（Property Sheets->[Graphic]）。

Ghostscriptのパス名に空白が含まれるときは、短いパス名を用いてください。

また、Ghostscriptの起動にパラメータを付加することができ、それには、スペースの代わりに ^ を区切りに使って指定します。たとえば

-gsx:c:\gstools\gs4.03\gswin32c.exe^-dNOKANJI


-hbuf:
HyperTeXを扱うときのキャッシュのうち、ジャンプ先やラベル名を保存しておくための文字列バッファのサイズ（Property Sheets->[HyperTeX]）。正の整数を指定します。


-HC:
dviファイルから読み取ったテキスト幅を文書の横幅と考え、設定してある紙面の横幅を基準に文書の横方向のセンタリングを指定することができます(Property Sheets->[Paper]）。長さで指定するパラメータです。


-hname:
HyperTeXとsource specialsを扱うときのキャッシュのサイズで、ジャンプ先のラベルの数とsource specialsの個数の合計（Property Sheets->[HyperTeX]）。正の整数を指定します。


-href:
HyperTeXを扱うときのキャッシュのサイズで、HyperJumpの数（Property Sheets->[HyperTeX]）。正の整数を指定します。


-HS:
横方向のセンタリング -HC: を指定したとき、そのセンタリング後に行う横方向の移動を定義することができます（Property Sheets->[Paper]）。ON/OFFを指定するパラメータです。


-hyper:
HyperTeXで、HyperJumpを示す文字列の表示形式を指定します（[HyperTeX]）。パラメータファイルでは整数で指定します（16進数での指定が便利）。

-hyper:modeとしたときの表示形式は、-search: のときと同じなので、そちらを参照してください。ただし、mode & 0xf00 の値は無視されます。


-hyperoff:
HyperTeX specialsの取り扱いを指定します（Property Sheets->[HyperTeX]）。

0:  デフォルト
1:  HyperTeX specialsを無視する(Disable　hyperjump)。
2:  外部へのHyperJumpに対しても、ダイアログボックスの表示をしない(Direct outerjump)。

パラメータファイルでは、上記の数字で指定します。


-J:
-J:<num>  のように数字<num>を指定すると、jfmファイルから計算した値よりもフォントの高さの<num>/1000倍だけベースラインの下に来るように位置を調整します(cf. Property Sheets->[JFont2])。

デフォルトの値は0です。負の値も許す整数で指定します。


-JC:
和文フォントの文字の置き換えを設定します（Property Sheets->[JFont2])。

-JC:<number>:<new_code>=old_code[y|t]:...:new_code=old_code[y|t]

<number>には、変換する文字の(定義の)総数を10進数で与えます。<new_code>, <old_code>は4桁の16進数で、JIS codeが <old_code>の文字を <new_code>に変換します。

デフォルトでは、縦書文字、横書文字の両者ともに変換しますが、
y を指定すると横書文字のみ、 t を指定すると縦書文字のみ変換します。
先頭から探して、最初に見つかった変換だけが有効です。


-L:
8文字を越えるフォント名を切り詰める方法を定めます。ファイル名の長さの制限のため、MS-DOSで用いられていました（Property Sheets->[Font])。
Windows95/98/Me/NT/2000では、切り詰めをしないのがデフォルトです。lcircle10 の場合

2(Cut no part):     lcircle10 -> lcircle10
0(Cut last part):    lcircle10 -> lcircle1
1(Cut middle part): lcircle10 -> lcirle10

整数型の変数なので、パラメータファイルでは上記の数字を指定します。


-LM:
紙面左端の印字不能領域の幅を表します。長さで指定するパラメータです。

これにより、プリンタとそのドライバ固有の印字位置の横方向の補正を行います。一時的な調整は、-OX: で行います。(cf. Property Sheets -> [Printer])


-log:
dvioutのエラーやWarningなどの情報を記録するログファイルのパス名を指定します(Property Sheets->[System])。

単に + とすると、dviout.exe の存在するディレクトリに dviout.log というファイル名でログファイルが作成されます。一方、- とすると、ログファイルは作成されません。メニューバーからもこの設定は変更可能です。


-macro:
キーマクロを５つ（Macro1,...,Macro5）定義します(Property Sheets->[Key]）。

5つのマクロは、順に空白で区切って、DDEによる他のプログラムとの連携における[ValueSet(parameter=value)] あるいは[Function(key)]の引数の形で定義します。
ただし前者は各parameterの前に - をつけます。また定義されるvalueは、空白やコントロール文字を含んではなりません。より一般には、dviout specials の形式が許されます。

これらを合わせたものを一つのマクロとすることも可能で、その場合のように一つのマクロの中に空白が含まれるときは、一つのマクロを" "で挟んでまとめます（ただしマクロはネストできません）。たとえば

DTDF "-y=A4L -LM=5mm -RM=5mm FN" JMJBJRJF JTSD JBSU

なお、各キーマクロを任意のキーに割り当てることができます。


-mag:
縦横のサイズの変換を行いますが、指定をしない場合は、dviファイルに書かれた \magstep の値を用います（Property Sheets->[Resolution]）。

\magstep が m であったとすると、サイズは 1.2^m 倍され、フォントの解像度も、それに応じて変換されたものが探されます。

パラメータファイルでは、0, 1,...,9 でmagstepの値が指定でき、-1 でデフォルトを表わします。magstep halfは、-half=+ と指定します。

[Resolution]のプロパティーシートでは、現状にかかわらず常に default と表示されます（誤って特定の magstep を起動時に設定してしまうのを避けるためです）。 現在の mag の値は、Help -> Information で知ることが出来ます。


-mode:
current mode を変更し、そのモードのパラメータをRegistryから読んで設定します。mode の値を 0 から 9 までの数字で指定します。

ツールバーから Option->Mode... で変更するのと同様の効果を持ちますが、（現在表示中ならば）次の表示から有効ですので、表示中のもを再表示(ReNew)すれば、変更したパラメータが使われます。

起動時のコマンドパラメータ、あるいは、DDE通信でのみ、このパラメータが使えます。起動時のデフォルトは、Property Sheets->[REGISTRY]で行いますが、それと異なる mode で起動したい場合などに用いることができます。


-multi:
同時に起動可能なdvioutの最大数(Property Sheets->[System])。正の整数で指定します(cf.no more dviout)。


-ntt:
-ntt の指定で、dvioutがサポートするアスキーpTeX用の和文フォントを、NTT JTeXでタイプセットされたdviファイルからも利用できるようになります(Property Sheets->[JFont2])。ON/OFFを指定するパラメータです。


-nttF:
オプション-ntt:によって、NTT JTeXの和文フォントをアスキーpTeXの日本語フォントで代替する場合、\jfontによって、新たに和文フォントを追加定義したときには、追加した和文フォント名をdvioutにも教える必要があります。

これには、以下のようにオプション-nttF: を用います(Property Sheets->[JFont2])。

-nttF:<jfm_file_1>=<追加_font_1>;<jfm_file_2>=<追加_font_2>;...

このオプションの場合、ポイント数(10や12など)や解像度(118や360など)を含まない名前を指定することに注意してください。


-OX:
横方向の出力位置の補正の設定(Property Sheets->[Paper]）。長さで指定するパラメータで、負の値も可。
CTRL+SHIFT+左右の矢印 により、0.5pt = 0.176mm 単位での直接補正も可能。


-OY:
縦方向の出力位置の補正の設定(Property Sheets->[Paper])。長さで指定するパラメータで、負の値も可。
CTRL+SHIFT+上下の矢印キー によって、0.5pt = 0.176mm 単位での直接補正も可能。


-renew:
「dviout以外のWindowに移動し、再度dvioutのWindowに戻ってきたとき、表示中のdviファイルが書き変えられていないかどうかチェックし、書き換えられていれば、表示を自動更新する」という機能を設定できます（Property Sheets->[System])。ON/OFFを指定するパラメータです。


-RM:
紙面右端（Landscapeのときは、上端）の印字不能領域の幅を表します。長さで指定するパラメータです。(cf. Property Sheets -> [Printer])。


-S:
Windows95の和文TrueTypeフォントのようなJXL4以外の和文フォントを用いるとき、その大きさを調整します。
default は 1000 で、設定した値に比例した大きさに調整されます(cf. Property Sheets->[JFont2])。たとえば、950 とすると、5%の縮小です。正の整数で指定します。


-scale:
Display -> View1,...,View4 の４種類の画面の表示モードを設定します。Property Sheets -> [Display] で設定できます。

-scale:<x1>:<y1>:<z1>:<x2>:...:<y4>;<z4>

として設定できる（パラメータファイルでの指定も同様）。<x1>:<y1>:<z1>は、View1 に対応し、そのほかも同様である。この３つの数字の意味は、-BMP: の時と同様で、横方向の縮小率、縦方向の縮小率、ガンマ補正（＋画面反転）を表す。


-sdpi:
文字列サーチやHyperTeXで文字列に色付けを許可する最大の解像度（gray scale込みのdpi)を指定します(Property Sheets->[Search])。正の整数を指定します。

メモリーの消費を押さえるのが目的で、デフォルトは150となっています。

なお、ルーペでみた画像は、この色付けがなされません。


-search:

文字列サーチで見つかった文字列の表示形式を指定します(Property Sheets->[Search])。

-search:modeとしたとき、

mode & 0x8000 = 0: box 全体、または、その中の文字、または枠に色をつける
mode & 0x8000 = 0x8000  この時は色付きの線を引く（通常、mode & 0x80 = 0x80）
     このときさらに
  (mode & 0x10000)?: 線と同じ色で文字にも色を付ける？
  (mode & 0x04000)?: 縦書きのとき、線を右側にする？
  (mode & 0x02000)?: 横書きのとき、アンダーラインでなくオーバーライン？
  (mode & 0x01000)?: 横書きのとき、アンダーラインを下部に？

   mode & 0x02 = 0    : fill box
                 2    : draw frame

   mode & 0x0c = 0    : or  color
                 4    : set color
                 8    : reverse  (ignore : mode & 0xf0)

   mode & 0x80 = 0    : background
                 0x80 : forground

   mode & 0xf0 =
     color box (with gray characters in black)
       0x00: original    0x10: yellow box  0x20: magenta box
       0x30: red box     0x40: cyan box    0x50: green box
       0x60: blue box    0x70: black box

     color characters (gray scaled with a white background)
       0x80: black char  0x90: blue char   0xa0: green char
       0xb0: cyan char   0xc0: red char    0xd0: magenta char
       0xe0: yellow char 0xf0: white char

   mode & 1 は、無視される
   mode = 0xf0 は、文字列が消されることを意味する
   反転モードでの色は、補色になります。

以上は、-hyper: の場合も同様です。

   mode & 0x100  = 0: サーチされた文字列の色付けは、一つずつ
                != 0: そのページで見つかった文字列全部を色付けする

   mode & 0x200  = 0: マウスカーソルは移動しない
                != 0: マウスカーソルは、サーチされた文字列を指す


-sFont:
文字列サーチや文字列コピーで（グラフィック文字のフォントなど）無視するフォントを指定します(Property Sheets->[Search])。

複数のフォント名を ; で区切って指定します。これらは前半と後半の２つのブロックに分け、そのブロックは空白で区切ります。前半は無視するフォント、後半は大文字の A から Z までのコードのみを通常の文字とみなし、あとは無視するものです。

フォント名の末尾は、* として省略することができます。このときは、区切り記号の ; は省略できます（lasy＊と指定すると、lasy8, lasy10などが該当）。たとえば

-sFont:cmex*lasy*line*lcircle*  cmsy*cmbsy*


-spi:
Susieという画像表示ソフトがフリーに提供されており、対応する画像フォーマットに応じたDLLがSusie plug-inとして、各種開発されています（install.txt の最後の部分を参照）。

dviout for Windowsでは、このSusie plug-inを使って各種の画像を取り込むことができます。-spi: で、このplug-inの存在するディレクトリを指定します。デフォルトは、起動したdvioutの存在するディレクトリです。


-t:
一度に何ドットずつスクロールするかの設定です(Property Sheets->[Display])。

この値を大きくするほど、スクロールは高速になりますが、スクロールが滑らかでなくなります。正の整数を指定します。


-TEXFLI:
FLIフォントライブラリを使用するとき、-TEXPK: でフォントライブラリ名の可変部を ^f で表現して指定し、-TEXFLI: にその可変部分を列挙します(Property Sheets->[Font2])。


-TEXFONTS:
欧文TrueTypeフォントを旧来の方法で用いる、あるいは、PKフォント存在しないがtfmファイルが存在する場合にそこを正しい大きさの空白で置き換える、などを行う場合、これによってtfmファイルおよびjfmファイルの存在するディレクトリ名を指定します（Property Sheets->[Font]）。

-TEXPK:と同様な意味で ^r や ; や \\ を用いることができます。


-TEXKNJ:
MS-DOS版のdvioutで用いられていたディスク上のビットマップ和文フォントを利用する場合には、MS-DOS版と同様に -TEXKNJ: でそのフォントを指定します（Property Sheets->[JFont2]）。ファイル名には各フォントの横のドット数が含まれていなければなりません。
-TEXKNJ: では、そのドット数を ^d で指定します。

指定の仕方は、例えば

-TEXKNJ:c:\font\jfont\^s^d.pk;c:\font\jfont\kanji.^d

のようにします。

TEXKNJ: の中に ^s があると、それは対応するjfmファイルのファイル名から拡張子(.tfm)を除いた部分の、さらに後ろから数字を除いた文字列に置き代わります。

例えば、goth5.tfm, goth10.tfm などのときは、^s には、goth が代入されます。先程の例の最後の部分は c:\font\jfont というディレクトリにgoth.24, kanji.24, kanji.32, kanji.48 などの和文フォントが存在するときの指定です。


-TEXPK:
欧文のPKフォントなどフォントグリフファイルの所在を指定します。TrueTypeフォントやアスキーのpTeXを使うときは、欧文／和文のtfm/jfmファイル（フォントメトリックファイル）の所在もこれで指定します（Property Sheets->[Font], -TEXPK の設定例）。

指定では、^ または % と、その次の一文字との組み合わせで、それぞれ以下の特別のものに置きかえられます。以下の ^ は  % に変更可能です。

 ^r  -TEXROOT: で設定した文字列
 ^s  フォント名（cmr10, min10など）
 ^d  dpi(dots per inch)の値
 ^l  dpiの5倍の値
 ^g　GTHフォントライブラリ、あるいは、FARフォントライブラリを示す
 ^f  FLIフォントライブラリの可変部を示す
 ^T  環境変数 TEXMFMAIN それが存在しなければ 環境変数 TEXMF の表すディレクトリ
 ^x  dvioutのインストールされたディレクトリ
 ^w  Windowsのシステムディレクトリ
 ^F  DVIファイルにフォントを埋め込む機能によるフォント
 ^s^tfm  ^s.tfm と同じだが、Windowsに登録されたTrueTypeフォントのみを指す
 \\  任意のディレクトリ名の列（kpathseaの機能）
 ;   複数の指定をする場合の区切り。先に書かれたものが優先


-TEXPKD:
PKフォントに対し、各文字のラスターの位置などを所在を記録したインデックスファイル（pktopkdを用いる）を作成し、それを-TEXPK:で指定して用いることができます。

-TEXPKD: で、実際のPKフォントの所在をルートからのパスの一部で指定して、インデックスファイルに書かれた相対ディレクトリパスと合わせて用いられます(Property Sheets->[Font2])。

・64K byte以上のサイズの大きなPKファイルを使う場合
・PKファイルを多数使うDVIファイル(例えば、NTT版のJTeXでタイプセットしたもの)を扱う場合

などに MS-DOSで用いられました。


-TEXROOT:
-TEXPK:または -TEXFONTS:に ^r または  %r という文字列があると -TEXROOT: で設定した文字列 が代入されます(Property Sheets->[Font])。
; で区切って、複数の指定が可能です。

^T, ^w, ^xなども使えます（cf. -TEXPK:）。
共通のルートからのパス名を設定しておくとよいでしょう。


-TM:
紙面上端の印字不能領域の幅を表します。長さで指定するパラメータです。

これにより、プリンタとそのドライバ固有の印字位置の縦方向の補正を行います。一時的な調整は、-OY: で行います。(cf. Property Sheets -> [Printer])


-tpic:
tpic specialsのコマンドを有効にするかどうか、また、有効にした場合、曲線描画についてBezier曲線を用いる（これがデフォルト）か、spline曲線を用いるかどうか、またpTeX縦書きモードで座標を回転させるかどうかを指定します(Property Sheets->[Graphic])。

整数型のパラメータなので、パラメータファイルで指定するときは、上記をそれぞれ順に0, 1, 2 の数で指定します。
さらに、pTeX縦書きモードで座標を回転させるには、16の値を加えて指定します。


-ttf:
欧文TrueTypeフォントの使用につき、それをコントロールします(Property Sheets->[Font2])。非負の整数で指定します。

-ttf:0   欧文TrueTypeフォントの使用を禁止する。

-ttf: <num>   <num>が正の整数のとき、<num>dpi未満のフォント（-TEXPK:の^dに対応）には欧文TrueTypeフォントの使用を禁止する。

dviファイルで使われているフォントで

・-ttf:の値が正で、^dの値が-ttf:の値以上
・-TEXPK:でそのフォントのtfmファイルが見つかる
・Peoperty Sheets->[WinJFont]で、そのフォントと欧文TrueTypeフォントとの対応が設定されている

の全てが満たされたときのみ、対応する欧文のTrueTypeフォントが使われます。

[Font2]の[Flush]ボタンを押さないと有効にはなりません。押さないと過去に使われたフォントの記録がそのまま用いられるからです。


-varf:
オプション-varf: をONにすることにより、固定サイズの和文ビットマップフォントに無段階の縮小/拡大を行なうことで、スケーラブルフォントとして用いることができます。
また、オプション -e: によって全体の拡大／縮小を行った場合には、固定サイズの欧文フォントに対しても同様な調整を行います。ON/OFFを指定するパラメータです。(Property Sheets->[Font2])

基礎になるフォントは、このオプションをつけなかった場合に用いられるフォントです。

和文フォントに対しては、jfmファイルを読んで、それに該当する縦横のサイズになるように縦方向と横方向を個別に拡大/縮小するので、平体や長体にも対応できます。

なお、-F: による代替フォントでサイズが異なった場合に、それを調整するには -FB: を用います。


-VC:
dviファイルから読み取ったテキストの高さを文書の縦幅と考え、設定してある紙面の縦幅をき基準に文書の縦方向のセンタリングを指定することができます(Property Sheets->[Paper])。長さで指定するパラメータです。


-VS:
縦方向のセンタリングを指定したとき、そのセンタリング後に行う縦方向の移動を定義することができます(Property Sheets->[Paper])。ON/OFFを指定するパラメータです。


-vfn:
WindowsのTrueTypeフォント、書体倶楽部形式のフォントなどを用いるとき、それのコンフィギュレーションファイル（デフォルトのファイル名は dviout.vfn）をフルパス名で指定します(Property Sheets->[JFont2])。

[WinJFont]での指定と併用はできません（[WinJFont]で設定すると、[JFont2]での -vfn: の設定は消去されます）。[JFont2] での -vfn: の設定を消去してデフォルトに戻すには、[WinJFont]で[Defalt]を押し、さらに[Save]と[OK]を押します。

Windowsの和文TrueTypeフォント以外の書体倶楽部形式フォントを使用するとき、和文フォント埋め込み（Font/Image Embedding）のとき、非日本語Windowsで和文フォントを使うときなどのみ指定してください。


-Wshow:
不足した欧文フォントを作成するときのMETAFONTの起動や、PostScriptの画像表示でGhostscriptを起動するときなど、通常新たなWindowsを開かず、最小化した状態、すなわちタスクバーのみで示されます。

このスイッチをONにすると、実際にWindowsが開かれ、それは起動したものが終了するまで続きます(Property Sheets->[System])。タスクバーの状態になると起動したプログラムが止まってしまう場合や、実行状態を見たい場合にこのスイッチをONにします。


-y:
Property Sheets->[Paper]で、用紙サイズと向きを指定します。dviout.par などのパラメータでは

-y:<youshi>[P:L]により指定します。

<youshi> = A3, A4, A5, A6, A7, E3, E4, E5, E6, B3, B4, B5, B6, J1, J2, J3, J4, Legal, GovLegal, Letter, HalfLetter, GovLetter, Exective, H, SVGA, XGA, SXGA, UVGA etc.

 それぞれ、A3, A4, A5, A6, A7, B3E, B4E, B5E, B6E, B3J, B4J, B5J, B6J, KIKU, 46, NB, AB, Legal, GovLegal, Letter, HalfLetter, GovLetter, Exective, はがき, SVGA, XGA, SXGA, UVGA etc. のサイズです。

<youshi> = F<width>:<Height> により、縦横の長さで指定することもできます（長さ <width> は、12.5cm, 123mm, 1024dot/300dpi などと書けます -> Q_S3）。

<youshi>の後の P , L は、用紙の縦置き、横置き、を表します。


-virtual:
Virtual font使用の ON/OFFの指定(Property Sheets->[Font2])。

Virtual font内での縦書きは未対応。Virtual font内でのspecialは無効。
などのいくつかの制約がある。テスト段階なので、問題点がある可能性がある。


-src:
source specialsでのエディタの操作方法を、たとえば

c:\usr\local\bin\mule.exe^s+%d %s

のように指定します。%s はTeXのソースファイル名、%d は行番号を表し、^s は実行ファイルとパラメータとの区切りを表します（Property Sheets->[Common]）。
なお、%s の代わりに %n とすると、拡張子を除いた部分が代入されます。以下の

<c:\usr\local\bin\mule.exe^s+%d %s

のように、先頭に < をつけると、エディタを起動後 dviout はアイコン化されます。

DDEを使う場合は

`myedit myedit Open(+%d %s)`c:\bin\myedit.exe^s+%d "%s"

のように

`service_name topic_name xtyp_execute`command

として、DDEのサービス名、トピック名、XTYP_EXECUTEトランザクションの文字列を1文字の空白で区切り、` で囲って指定し、そのあとに続けてDDEサーバが未登録の場合のコマンドを書く（cf. source specials)。
後者の ` を `` としておくと、DDEが未登録のときcommandの実行後にDDEのトランザクションを行う。
複数の XTYP_EXEXUTEトランザクションがある場合は、| で区切る。例えば

`myedit myedit Open(%s)|Line(%d)``c:\bin\myedit.exe


-Fod:
TeXのフォントに対し、-TEXPK: を参照してディスク上やTrueTypeなどのどのようなフォントを使うかを、起動時でなく使われたときに初めて決定する。ON/OFFの指定(Property Sheets->[Font2])。


-G:
和文フォントに対し、指定した文字列を含むフォントをゴシックと判断する。複数の文字列をしてするときは、; で区切る。デフォルトはgoth:jisg(Property Sheets->[JFont2])。

LBP用ドライバを使ったdviprtによる印刷や疑似ゴシックを使う場合のみ意味を持つ。


-TEXSUBF:
サブフォントのためのSFDファイル（*.sfd）の所在を指定する（Property Sheets->[Font2]）。
Windows TrueTypeフォント使用に関し、-ftt: で示されたフォントマップファイルに、たとえば

 jbtm@UKS@     Gulim     unicode

と書かれていると、jbtmxx という 8bit の文字コードをもつ jbtmxx.tfm のフォントに対し、文字コードを UKS.sfd に従って 16bit のコードに変換して、Windows TrueTypeフォント Gulim を unicode で用いる。
なお、xx は通常は2文字である。

-TEXPK:と同様な意味で ^r や ;  や \\ を用いることができます。


-Set:
DDE における [Funtion(key)] と同様な機能で、引数 key と同様にキーシンボルを並べた文字列を設定できる（cf. 他のプログラムとの連携）。
Choose Parameters... における読み込みパラメータ・ファイルなどで使われる。


-isp:
dvioutで解釈されなくても、Warningを出さないspecialsを ; で区切って指定する(Property Sheets->[Common]）。文字列で指定します。たとえば

-isp=pdf:;epsfig:


-gsrc:
source specialsでのエディター呼び出しと同様，取り込み画像を画面上でダブルクリックすると，対応する画像エディタを呼び出す手順を設定します．たとえば

.ps.eps=c:\usr\local\bin\psedit.exe^s"%n";.bmp=mspaint^s"%s"

のように、画像ファイルの拡張子と呼び出す手順を，; で区切って指定します．

拡張子は最後の . から指定し，同じ呼び出し手順のときはそれを並べ，その後 = に続けて呼び出し手順を指定します．

呼び出し手順は（-src: の場合と同様），プログラムとパラメータの区切りを ^s で指定します． %s は画像ファイル名，%n はそれから拡張子の部分を除いたものです．

定義されていない拡張子をもつ画像ファイルは，無視されます．


-texhelp:
Help → TeX Help によって、dviout を起動するときのパラメータを指定する（Property Sheets->[System]）。

DVIファイル名が指定されていない場合は，^x\HyperTeX\input.dvi が最後に付加される。指定した場合は、.dvi で最後が終わっている必要がある。たとえば

-NULL=(555,-20)-(1027,737) -dpi=600 -BMP=6:6:800

などと指定する。


-ToEdit:
dviout specialsの `in や `input で，Editor への直接入力の機能を設定する（Property Sheets -> [HyperTeX]）．

^c    Clipboardへのコピー
^e    SendMessage(EditWnd, WM_CHAR, , )での転送
^@ ^A ... ^_ 　  CTRL+@ CTRL+A ... CTRL+_ のキー入力
^^   ^自身のキー入力
通常の文字  それ自身の文字入力

^c^V  default（クリップボードへのコピー後，CTRL+V でペースト）
^e    秀丸などに有効


・最初のページの表示が遅い(Q_V1)。
・ページの移動が遅い(Q_V2)。
・ツールバーの矢印によるページ移動の向きを逆にしたい(Rev_arrow)。
・ツールバーのボタンによってLadscapeかPortraitかを変えたい(Q_V10)。
・表示のスケールが大き過ぎる、あるいは、小さすぎる(Q_V3)。
・プレビュー画面で文字がぼける、あるいは、薄い(Q_V4)。
・できるだけ大きくプレビュー画面を確保したい(Q_V5)。
・dviファイルの更新をチェックし、プレビューもそれに合わせて更新する(Q_V6)。
・ルーペを移動すると残像が残ったり、ちらつきが目立つ(Q_V7)。
・表示の紙面が明るすぎる(-bright:)。
・Landscapeの文書なのに、Portrait紙面が表示される(Q_O22)。
・拡大すると、Searchで見つかった文字列に色がつかない(-sdpi:)。
・Searchで見つかった文字列の色が不明確、変わらない(Q_V8)。
・スクロールで画面がちらつく(Q_V15)。
・文字列コピーで、記号などが文字に化けて切り取られる(-sFont:)。
・色付けされた文字の輪郭に薄い色が入る、位置がずれる(Q_V9)。
・ページ全体のアウトラインを表示したい(Q_V11)。
・プレビュー画面でのマウスボタン(Q_V12)。
・プレビュー画面で位置やサイズを知るには(Q_V13)？
・プレゼンテーション用の原稿を準備する(Q_V14)？


dviout では、オンデマンドフォント検索（-Fod:）がOFFのとき、最初の表示を行う前に、そのdviファイルで使われているすべてのフォントに対し（-TEXPK: などを読んで）、ディスク上のどのフォントファイルを使うかを決めます。また、ページとdviファイル上での位置の対応も作ります。
よって、大きなdviファイルほど、最初のページの表示まで時間がかかりますが、ページの移動に比べて、最初のページの表示が特に遅い場合は、フォントのサーチに時間がかかっている可能性があります。

dviファイルを表示してdvioutを（フォントの所在の記録を有効にするため）Quit でなく eXit+Save で抜けだし、dvioutを再起動して同じdviファイルの最初の表示にかかる時間を調べてみてください。

-Fkeep:をOFFにして、-TEXPK: などにおいて kpathsea の // や \\ を使うと、フォントのサーチに時間がかかりますので、ご注意ください。また、// や\\ は、root に近い部分は避けてください。

また、デフォルトでは、Registryにセーブされたすべてのパラメータを、起動時にロードするようになっています。[REGISTRY]のProperty Sheetで、必要なもののみロードするように変更するのも有効かもしれません。


ページ間の移動が遅い、特に、1ページ -> 2ページ -> 1ページ、としたとき、最後の 2ページ -> 1ページも遅い場合。

ページの展開に時間がかかるのが原因と思われます。解像度の大きなフォントを用いるほど、データ量が大きく、時間がかかります。gray scale 表示をするにしても、400dpi 以下のフォントが望ましいでしょう。特に遅い機種の場合は、118dpi のフォントなどを用いて、gray scale を使わない、という方法もあります。

また、フォントのキャッシュのバッファが小さすぎて頻繁にフラッシュが起こると遅くなります。これは、Help->Buffer info(バッファ情報）を見ると分かります。これは、-bf:などを増やすことで対処します。


表示の拡大/縮小のスケールは、Display->Magnify, Reduce あるいは、Property Sheets->[Display] の H-scale, V-scale で変更できます。

[Display] で [Save] を押すと、現在の状態がデフォルトになります（場合によっては、[REGISTRY]でのチェックと[Save]も必要です）。


これは gray scale 表示を行っているためと思われます。Property Sheet->[Display]で、contrast を調整してください。High の側にすると、より文字が濃くなります。


View -> Tool Bar, Status Bar, Page Slider, Scroll Bar で、ツールバー、ステータスバー、ページスライダー、スクロールバーを消すことができます。

これにより、dvioutのWindowに対し、そのプレビュー画面の部分が若干広くなります。

なお、プレゼンテーション・モードでは枠を全て消した全画面表示になります。Presentation Menu の Cut edge を実行しておくとより大きく表示されるでしょう。

なお、起動時のコマンドラインパラメータ -NULL= の指定で、ディスプレイ画面全体をプレビュー画面にすることができます（cf.起動と終了）。


プレビューを行いながらTeX のソースファイルを作成／修正している場合に、dviファイルが更新されると、dviout画面に移ったときに、プレビュー画面を自動的に更新することができます（-renew:）。

dvioutの主Windowがアクティブに変更されたときのみ、この更新がチェックされます。


画面の書き換えが遅い機種では、気になる状態のことがあります。特にルーペが丸型のときやカラー画像データを含む場合は、書き換えが遅くなります。

ルーペを矩形に背景色をdefaultにすると、また、Scale:を1とし、Speed: の値を大きくすれば、状況が改善されます（Property Sheets->[Common]）。


デフォルトではサーチされた文字列は、赤で表示されます。gray scale表示では、赤の16階調で文字列が表示されますが、Windowsの画面が256色モード、あるいは、それ以下では、色が正確に表現できません。

画面をHigh color または Full color にする、色づけを箱の形などに変える（Property Sheets->[Search]）、gray scaleを変更する、などの対処が考えられます。

また、color specials によって既に色付けされた文字は、見つかっても色が変わりません。この時は、アンダーラインや箱、あるいは、カーソル移動で示すようにするとよいでしょう。


-color: を ON にすると \special による文字や線の色付けが可能になります。

この場合、縮小するときにgray scaleの代わりにアンチエリアシングを用いますが、REPLACEによる重ね塗りにより輪郭に薄い色が入ることがあります（cf.-cmode:）。

また、各文字毎にアンチエリアシングを行ってから表示しているので、位置が最大１ドット未満でずれます。

ルーペなどで等倍に表示すれば、正常に見ることが出来ます。


Second Tool Buttons(cf.View->View Menu)の右側6つのボタン（左や右向きの矢印やニコニコマークのボタン）は、Property Sheet->[Key] でユーザが自由に機能を再定義できます。

たとえば、<- の印のボタンに、Landcapeへの切り替え機能を定義するには、次のようにします。

Option->Setup Parameters->[Key]のFunction:で Landscape を、Key:でUser2を選択し、[Define]キーを押します。必要なら、さらに他の定義を行った後、[Save]を押し、[OK]で抜け出ます。ツールチップも適切なものに置き換わります。

このボタンが表示されていない場合は、View->Change Tool Buttonsで切り替えてください。


ページ全体を表示するには、

・ツールバーのDisplay->Fit（デフォルトでは、５のキー）を使う
・Display->View->mode4（デフォルトでは、４のキー）などに適当なscaleを設定しておく
・Optionのルーペ（CTRL+マウスの右ボタン）に適当なscaleを設定しておく
・Display->View->twp pages, cross pagesを利用する

などの方法があります。


プレビューで表示されているページに対し、マウスボタンは以下のような機能があります。

1. 左ボタンのクリックは、HypetTeXのジャンプを意味します。
CTRLキーを押しながらのクリックでは、ジャンプの前にジャンプ先を表示し、ジャンプするかどうか選択できます。

2. 手の形のマウスカーソルのとき、HyperTeXのホットスポットでない場所では、マウスの左ボタンを押したままマウスを動かすことで、紙面を押さえたままずらすスクロールができます。

3. SHIFTキーを押しながら、マウスの左ボタンをクリックすると、マウスカーソルの位置の文字列が取得できます。source specialsが設定されていれば、TeXのソースファイルへのジャンプが可能です。

4. CTRLキーとSHIFTキーを押しながら、マウスの左ボタンをクリックすると、クリックした位置と文字、それのDVIファイルにおける位置などの情報が表示されます。

5. マウスの右ボタンを押すと、Loupe機能が動作します。さらにCTRLキーを押しながらの場合は、別のLoupeが動作します。押しながらマウスを移動すると、Loupeも移動します。

6. 矢印のマウスカーソルのとき、マウスの左ボタンのダブルクリックで、source specials によるTeXのソースファイルへのジャンプができます。

7. IntelliMouseでは、中央のホイールを回すと上下スクロールし、押しながら（あるいは、SHIFTキーを押しながら）回すと、ページを移動する。押しながら回すとき、マウスの左ボタンも押していると、前ページの最後、あるいは次のページの最初に移動する。
押しながら回すとき、SHFTキーを押していると5ページ飛び、CTRLキーを押していると10ページ飛びに移動する。
また、CTRLキーを押したままホイールを押さずに回すと、画面の拡大／縮小が行われる。
さらに、IntelliMouse Explorerの側面のボタンには、Backward History, Forward Historyの機能を持たせてある。

8. 4ページまたは16ページ同時縮小表示モード(Display->View->cross pages, 16 pages)において、マウスの右ボタンをクリックすると、ポイントされたページの通常表示に移行します。

8. プレゼンテーション・モードで cover sheet を使っているときは、cover sheet をマウスで動かすことができます。なお、プレゼンテーション・モードでは、3, 4などの操作は別の機能になります（cf. プレゼンテーションでのキー）。

9. source specialsが設定されている場合、CTRLキーとマウスの左ボタンを押しながらマウスの右ボタンをクリックすると、TeXのソースファイルへのジャンプができます。

10. 領域設定（Display -> Region）では、SHIFT + マウスの左、または右のボタンのクリックで頂点をポイントして、矩形を指定します。


CTRLとSHIFTを押しながらマウスの左ボタンをクリックすると、マウスポインタの紙面での位置が表示されます。

目盛りつきのルーペ（[Common]）を用いると、4 pixel 単位での長さが調べられます。

pixel での単位から実際の長さを求めるには、Help->Other Info -> Screen/File Info を参照してください（ファイルと表示に関する情報）。


1. 既存のdviファイルを使う場合。
A4用紙サイズのものを横幅を最大に広げて縦方向のスクロールのみで表示する例では、

・縦横の位置をずらし、紙面サイズを調節して上下左右の空白を削ります。例えば、Help -> Setup Parameters -> [Paper]で

-OX=-2.25cm
-OY=-2.50cm
-y=F15.80cm:21.80cmP

といった値に設定します（必要なら[REGISTRY]でmodeに登録しておきます）。
これは Presentation Menu の Cut edge で自動的になされます。あるいは、Display -> Region -> On を選び、[Shift]を押してのマウスの左・右ボタンのクリックで領域を指定し、Display -> Region -> Cut で切り出します。

・View -> Cover sheet, Seamless HyperJump, Presentation type,  Cover type などを必要に応じて変更します。

・縦連結スクロールにするには、Display -> Y-two pages（デフォルトでは [0]のキー）を押し、2ページを縦に連結します。

・[ESC]でプレゼンテーション・モードに入った後、Fullのモードで表示します（デフォルトでは、[6]のキー）。

・[F12]を押すと、[Shift]+マウスボタンを使った線画機能が有効になります。

・4または16ページ縮小同時表示機能（デフォルトでは、[8], [9]キー）と、そこでのマウスの右ボタンクリックによるジャンプ機能などを活用すると良いでしょう。

2. プレゼンテーション用のファイルを作成する場合。
LaTeX2eで冒頭で \documentclass{slides} を選び、スクロールなしに画面全体を使って表示する例を考えます。

・紙面サイズ（\paperheight, \paperwidth）をフォントの解像度と画面サイズとを考慮して決めます。特に画面と紙面サイズの縦横比が一致するようにします。そのほか、\hoffet, \voffet, \textwidth, \textheightなどを調整します。

・dviout specials や pause special を使って TeX のソースを作成し、プレゼンテーションは、Fitのモード（デフォルトでは、[5]のキー）で [Space]キーのみで進行できるようにします。

「Help -> Troubles in dviout -> dvioutでのプレゼンテーション」を参照してください。


Winodwsのバージョンやその他の環境によってはスクロールによってプレビュー画面がちらつくことがあります。

View -> Background によって背景色を紙面（通常は白）と同じにすることによって、ちらつきが軽減されることがあります。


・フォントメトリックファイルとフォントグリフファイル
・フォントの所在の自動設定([Guess])
・和文フォントのサイズの調整(Q_F1)。
・欧文フォントと和文フォントのベースライン位置の調整(Q_F2)。
・和文フォントの優先順位は？(Q_F11)
・斜体、平体、長体などのフォントを用いる(Q_F3)。
・color specialsによってカラーの文字を使うには？
・lcircle10, lcirclew10 などの長い名前のフォントが見つからない(Q_F4)。
・存在しない欧文フォントの自動生成をするには(Q_F6)。
・存在しないフォントへの対処。
・使用しているフォントの情報の表示(Q_F13)。
・Times New Romanや市販の和文のTrueTypeフォント使うには？(Q_F14)
・DVIファイルへフォントを埋め込む。
・NTTJTeXでWindowsの和文フォントを使う(Q_O3)。
・Windowsの和文TrueTypeフォントの設定が消えてしまった(Q_F9)。
・和文TrueTypeフォントと書体倶楽部形式のフォントを併用したい(Q_F10)。
・日本語版でないWindowsで和文TrueTypeフォントを使うには？(Q_F12)
・欧文TrueTypeを使った文字の表示がおかしい(Q_F5)。
・高解像度で大きなフォントを使う(Q_F8)。
・回転した文字列を用いたい(Q_F7)。


・和文フォントのサイズは、-S: により一斉に調整できます。

・Windowsの和文TrueTypeフォントのサイズの個別の調整は、[WinJFont] の H scale/V scale で行います。

・dviprt機能で印刷する際のLBP内蔵の和文フォントのサイズ調整は、-dviprt: のサブパラメータ sで行います。


和文フォントのベースライン位置の調整には、-J: を用います。横書きの場合、和文の文字をより上あるいは下方向にずらしたい場合に用います。

WinAPIによるTrueTypeフォントの場合は、Property Sheets->[WinJFont]の V position, H position により、各フォント毎に調整が可能です。


WindowsのTrueTypeフォントの場合、[WinJFont]で設定できます。大幅な変形を行った場合は、サイズや水平／垂直位置の調整も行わないと、他の文字とのバランスが悪くなる可能性があります。これらの設定も、[WinJFont]でできますが、jfm/tfmに合わせた文字の縦横比の自動調整はされません。

付属の exjfont.zip の例を参照してください（明朝の平体と長体のjfmと[WinJFont]の設定ファイルがあります）。

印刷でLBP内蔵和文フォントを使う場合は、-dviprt:のパラメータで長体、平体が指定できます。また、jfmに合わせた長体、平体の調整が自動的になされます。

LaTeX2e の graphics packages を使って \scalebox を利用した文字の変形も可能です。


MS-DOSでは、ファイル名の長さの制限から、lcircle10, lcirclew10 などの８文字を越える長いフォント名は、８文字に切り詰め、PKフォントファイルに lcircle1.pk, lcirclew.pk, フォントメトリックファイルに lcircle1.tfm, lcirclew.tfm という名前を用いる、という方法が取られていました（中央を切り詰めて、lcirle10, lcirew10, とするやり方もあります）。

注意: これは、フォントのファイル名のみの話で、dviファイルには lcircle10, lcirclew10 と書かれており、UNIX上などで生成されるdviファイルと変わりありません。

Windows95/NTでは、長いファイル名が使えるので、切り詰めない正しい名前を用いることが出来ます。
MS-DOS用に提供されたフォントファイルや、各種ユーティリティーは、８文字で切り詰められているのが普通なので、それを流用する場合には注意が必要です（フォントファイル名を正しいものに変更するか、あるいは、-L:または -F: で対応する）。


-TEXPK: で欧文TrueTypeフォントを指定する旧来の方法でなく、Property Sheets->[WinJFont]でTeXのフォントとの対応を、そして-TEXPK: にtfmファイルを指定する方法を用いてください。

コード変換方法を[WinJFont]のcode typeで正しく定義してください。それでも異なる文字に置き換わる場合はVirtual fontで対応してください（cf.-ftt:）。


mktexpk（またはmakepk）あるいはMakeTeXPKがサポートされている場合は、付属のtemplate.pksを利用して欧文フォントの自動生成（<- 詳しくはこちらを参照）が可能でしょう。具体的には、

1. mktexpkまたはMakeTeXPK にパスを通しておく。

2. mktexpkまたはMakeTeXPKが正常に動作することをコマンドラインから実行して確かめておく。
MakeTeXPK の生成するフォントの所在を調べ、それ（たとえば、c:\ptex\texmf\fonts\pk\^s.^dpk） が、-TEXPK: に書かれていなければ追加する。
あるいは、-TEXPK: に書かれている場所にフォントが生成されるように mktexpkまたはMakeTeXPK の設定を行う。

3. template.pksの mode_name= に書かれているプリンタが、実際に使用するものにあっていなければ、それを書き直す。またmktexpk.exeを用いる場合は、template.pksの中にMakeTeXPKと書かれてあるのをmktexpkに修正する。

4. template.pksをフルパス名で、Option -> Setup Parameters -> Font2 の -gen: に設定する。たとえば

-gen:c:\dviout\utility\template.pks

のようにし、[Save]と[Apply]ボタンを押す。

なお、` を先頭に付けて、以下の例のように直接コマンドを指定することも出来ます（cxの部分は、プリンタにより変わります。指定しなければデフォルトのものになります）。

-gen:`mktexpk --dpi ^d --bdpi ^D --mag ^M ^s

-gen:`c:\ptex\bin\MakeTeXPK.exe ^s ^d ^D ^M cx

注意: mktexpkまたはMakeTeXPKで作成されるフォントの所在が -TEXPK: で示されていなければ、dvioutは作成されたフォントを見つけることができず、エラー Cannot resolve Fonts になります。また生成途中で止まってしまう場合はQ_O23 を参照。
mktexpk.exe は、makepk.exe というプログラムとなっていることがあります。


tpic specialsの拡張コマンド rt を使うことにより、文字列や白黒画像を回転して描画することができます。

\special{rt 0 0 1.57080}RightSide\special{rt 0 0 0}

のようにします。

また、LaTeX2eのgraphicx.styをdvips用出力とした場合、以下のように回転して描画することが可能です。

\rotatebox[origin=c]{270}{RightSide}


高解像度で大きなサイズのフォントを多く使う場合は、フォントのキャッシュバッファを十分大きく取っておくとよいでしょう(-br: -bf: の指定)。

ディスク上の大きなサイズのフォントファイルからデータを読み込むときには、フォントファイルのためのキャッシュバッファも十分大きく取りましょう(-bf:の指定)。

Help->Buffer Info.のバッファ情報で、これらのバッファの使用状況が分かります。


Property Sheetの[JFont2]で、たとえばNTT JTeXの和文フォントをWindowsのフォントで代替する(Q_O3)などの設定を行って[Save]した場合、このシートには-vfn:の設定があり、それが空白になっていないと、それもRegistryに記録されます。

上記の-vfn:は、和文フォントの設定を書いた外部ファイルを読み込むためのもので、[WinJFont]での和文TrueTypeの設定（これも-vfn:に対応）とのどちらか一方のみ選択できます。

誤ったものをRegistryにおける-vfn:に設定してしまった場合、和文フォントの設定がおかしくなります。

消えた設定をもとに戻すには、[JFont2]で-vfn:の項が空白になっていなければ、空白に変えて[Save]します。また、[WinJFont]で、[Default]ボタンを押せば、デフォルトの設定になります。必要ならさらに、[Save]などを行います。


Windowsの和文TrueTypeフォントと書体倶楽部形式の和文フォントの併用などの複雑な和文フォントの設定は、ファイルに書いて指定する必要があります。

付属の utility\dviout.vf0 を参照し、それを書き換えて設定ファイルを作成し、それを Property Sheetの[JFont2]の-vfn:で指定します。この場合は、[WinJFont]の指定は無効になります。


pTeXにおける和文フォントに対し、dvioutが実際に用いる和文フォントの優先順位は以下の通りになっています。それぞれの段階で、みつからない場合は、より下位のものが探されますので、pTeXが用いる和文フォントの種類を混在させることができます。

1.  -TEXPK: によってjxl4形式のフォントが指定されていた場合、それを用いる。jfmファイルが指定されていた場合は、以下になる。

2.  内蔵プリンタドライバによるLIPS III/IV, ESC/Pageでの印刷の場合は（-dviprt: のサブパラメータ f の指定に従って）プリンタ内蔵のフォントを用いる。

3.  Property Sheet の[JFont2]の -vfn: が指定されていたら、それに従ってスケーラブルフォントを用い、そうでなければ、[WinJFont]の設定に従って、WindowsのTrueTypeフォントを用いる。

4.  -TEXKNJ: によって指定された固定サイズのビットマップフォントを用いる。


color specials
Property sheet の [Graphic]の -color: が チェックされていると、文字や線に色をつけるための special 命令(cf.-color:)に対応します。

colorのspecial命令は、各ページ毎に独立するようにしてください。dvioutでは、1ページずつ増加する最初のページからのページ移動では、colorのspecial命令がページをまたがっていても正常に処理されますが、それ以外のページ移動では、colorはリセットされます。

Windowsのドライバを使った印刷では、カラーに対応しますが、内蔵のドライバの場合は、白黒になります。


68色
Black, White, Gray, Red, Green, Blue, Cyan, Magenta, Yellow,
Orange, Brown, Purple, Violet, Sepia, Tan,
RedViolet, VioletRed, YellowGreen, Goldenrod,
Dandelion, Apricot, Peach, Melon, YellowOrange,
BurntOrange, Bittersweet, RedOrange, Mahogany,
BlueGreen, BrickRed, OrangeRed, RubineRed,
WildStrawberry, Salmon, CarnationPink, Rhodamine,
Mulberry, Fuchsia, Lavender, Thistle, Orchid,
DarkOrchid, Plum, RoyalPurple, BlueViolet,
Periwinkle, CadetBlue, CornflowerBlue, MidnightBlue,
NavyBlue, RoyalBlue, Cerulean, ProcessBlue,
SkyBlue, Turquoise, TealBlue, Aquamarine,
Emerald, Maroon, JungleGreen, SeaGreen,
ForestGreen, PineGreen, LimeGreen, GreenYellow,
SpringGreen, OliveGreen, RawSienna


dviout for Windowsは、和文TrueTypeフォントの展開機能を持っているので、それを使うことにより、例えば英語版Windowsで、ASCIIの日本語TeXを和文TrueTypeフォントを用いて扱うことができます。そのためには、

1. ttindex.exe を用いて、使用する和文TrueTypeフォントのインデックスファイルを作成します。

2. [WinJFont]でなく、[JFont2]の -vfn: で和文フォント定義ファイルを指定し、その和文フォント定義ファイルでどの和文フォントをどのように使うかを定義します。

注意：dviout for WindowsのTrueTypeフォント展開ルーチンは、Windowsのシステムのものと比べて、特に小さな文字でその品質が劣ります。


・表示されているpreview画面の文字を、CTRL + SHIFT を押しながら、マウスの左ボタンでクリックすると、表示文字情報が得られます。

・Help -> Fonto Info により、表示中の dvi ファイルでどのようなフォントが使われているか、というフォント情報が表示されます。


Times New Roman, Arial や市販の和文TrueTypeフォントに対しては、乙部氏による付属の winttf.lzh あるいは winttf.tar.gz を使うとよいでしょう。それを texmfの親ディレクトリで解き、ttfonts.mapの所在を-ftt:に指定します。LaTeX2eの場合は、たとえば

\usepackage{timesnew}

\usepackage{mathwns}

などとして使います。より詳しくは、上記のパッケージに含まれる readme.txt, ttfonts.map, *.tex を参照してください。


フォントを埋め込む
DVIファイルにフォントを埋め込んでそれを使うことができます。

たとえば、foo.dvi が -dpi=300 で cmr10.300pk と cmr10.360pk のみを使っているとき、foo.tex の最初に

\AtBeginDvi{\special{dviout `initialize -dpi=300 -TEXPK=^F/^s.^dpk}}

としておき

dviadd cmr10.300pk cmr10.360pk foo.dvi

によってフォントを取り込んでおけば、dviout での foo.dvi の表示にフォントは不要となります。


・Property Sheetで変更したパラメータをデフォルトにする(Q_S1)。
・印刷の際はプレビューの際と異なるパラメータを用いたい（[REGISTRY]）。
・パラメータの設定値の出力
・パラメータの設定例
・Registryに書き込まれた設定値を読み込まずに起動したい(cf. 起動と終了)
・起動時のデフォルトのmodeを使い分けたい(cf.-mode:)
・Registryの内容を消去して、再インストールしたい(Q_S8)。
・パラメータの設定値を他のコンピュータにもコピーしたい(Q_S2)。
・読み込み可能なパラメータの設定の書式は(Q_S3)。
・ファイルに落としたパラメータを読み込みたい(Q_S4)。
・パラメータの設定や保存の際のエディット機能は(Q_S5)。
・共有のマシンでパラメータを設定するには(Q_S6)。
・複数のパラメータ設定値を使い分けたい(Q_S7)。
・パラメータを変更したが、思い通りにいかない(Q_S9)。
・デフォルトのパラメータファイルに書いても設定されない(Q_S10)。
・パラメータの自動インストール機能


Property Sheetでパラメータを変更し、それを次回の起動時にも有効にするには、そのSheetで [Save] を押してRegistryにセーブします。

このパラメータを起動時に読み込まないように変更していなければ、これでOKですが、そうでなければ、[REGISTRY]のSheetで、起動時に読み込むように設定を戻す必要があります（[REGISTRY]のSheetの左のリストボックスで選んで、[Auto Load]を押して追加し、さらに[REGISTRY]での[Save]を押して、実際に設定します）。

[REGISTRY]のSheetの左側のリストボックスで、+ がついているパラメータのみ起動時に読み込まれます。
上部のボタンなど（[REGISTRY]での[All Set]は、すべてのパラメータに + をつける）を使って[Save]を押すと、起動時に読み込まれるパラメータの種類が変更できます。すべてを起動時に読み込むように設定しても、Registryに設定値がSaveされていないパラメータは無視されますので、問題ありません。
[REGISTRY]での[Restore]を押すことにより、現在の状況を知ることができます。


パラメータの設定値の出力を用いて、設定値をdviout.par というファイルにし、それを dviout.exe のディレクトリに入れて dviout を起動すると、パラメータの設定値が取り込まれます。
ここで、-NULL というコマンドライン・パラメータを付けて dviout を起動すると、Registryの設定値を読みこんで上書きされないようにできます。
さらに、各Property Sheetで[Save]を押すと、取り込まれた設定値がRegistryに保存されます。


Option->All papametersで出力する形式が、dvioutが直接読み込み可能なパラメータの設定の書式です。

<parameter>=<設定値>の形で書き、複数の指定は、空白や改行で区切ります。<parameter>の前に- を付けてもかまいません。また、= の代わりに、: を用いることもできます。順に解釈され、同じパラメータの設定があれば、上書きされます。

1. -dpi: -br: のように整数を指定するもの
2. -LM: -OX: のように長さを指定するもの
3. -TEXPK: -gsx: -Set: のように文字列を指定するもの
4. -gbox: -varf: のようにON/OFFを指定するもの

という４種類があります。詳しくは、パラメータのリスト、あるいは、各Property Sheetの ? ボタンを
利用して、それぞれのパラメータを調べてください。

注意： いくつかの場合を整数で指定するパラメータは、Propert Sheet上では、数字でなく、意味を記したボタンを選択するようになっている場合があります。

整数を指定する場合、10進数のほか、8進数、16進数が使えます。たとえば、

dpi=300
ttf=1000
br=0x64000

長さで指定する場合、単位は mm, cm, in (インチ, 1in=25.4mm), pt(ポイント, 1in=72.27pt), bp(1in=72bp), dot/<number>dpi が使えます。たとえば

LM=4.56mm
RM=54dot/300dpi

文字列で指定する場合、それに空白や改行などの特殊文字が含まれるときは、「 '」や「 "」で囲います（ただし、「 '」または「 "」が文字列に含まれていないとする）。また、^$という文字列は、ヌル文字列を表わします。

ON／OFFを表わすパラメータのときは、「+」でONを「-」でOFFを指定します。設定値を書かない場合は、ONとOFFを反転します（トグルスイッチ）。

「#」 または 「;」 で始まる行は、コメント行です（cf. Choose Parameters）


Option->All parameters などで出力される形式でパラメータの設定を書いたファイルを読み込むには、以下の方法があります。

1. dviout -=<parameter_file>

として、起動時に読み込む（さらに -NULL をつけると、registryからのパラメータの読み込みはスキップする）。

注意：この-= は、-file= としても同等です。また、読み込むパラメータファイルから、さらに別のパラメータファイルが読み込めますが、そのネスティングは7段までです。

2. メニューバーの Option->Read Parameters からパラメータファイルを選ぶ。

3. Property Sheets->[System]で、-file: に直接そのファイル名を書いて[OK]を押します（[Save]を押すと、自動的に起動時に読み込むように設定されます）。


Property Sheetsの入力ボックス、Help->Information や Option->All Parametersで開かれるウインドウは、Notepadなどにおけるとほぼ同様の編集機能があります。

特に、範囲を指定してからマウスの右ボタンのクリックを使うことにより、このウインドウと他のエディタ（メニューバーのView Menuから開かれるSmall Editorでもよい）との間でのコピーが可能です。


WindowsNTなどで、１台のマシンを共有して複数の人が使う場合は

1. dviout の存在するディレクトリ（または、Windowsのディレクトリ）に dviout.par というファイルを作成し、デフォルトのパラメータを書いておきます（Property Sheet を用いて設定し、Option->Non-default parametersによって、編集、および、パラメータの設定値の出力をして用いるとよいでしょう）。

2. 各人がデフォルトから変更したいパラメータがあれば、各人が Option->Setup parametersで、変更して Registry に Save し、更に[REGISTRY]のシートに移って、変更したいパラメータのみに+記号をつけて（最初はすべて+がついているので、All Clearボタンを押してから、必要なもののみ+をつけるとよい）、Saveのボタンを押します。

dvioutは、パラメータファイルの方を先に読み、その後、Registryの設定を読んで上書きされます。


パラメータの値を、幾つかのあらかじめ設定したものに切り替えるには、以下の方法があります。

1. Property Sheetsの[REGISTRY]を使って、異なるmodeでパラメータを設定し、メニューバーの Option->Mode で切り替えて使う。

2. 幾つかのパラメータファイルを用意し、メニューバーの Option->Read Parameters から選択する（パラメータファイルは、dviout.exe の存在するディレクトリのサブディレクトリ par に、拡張子 par をもつ分かり易いファイル名で作成するとよい。パラメータの設定値の出力が参考になります）。


Option -> Uninstall で、dviout関連の Registry の内容が全て消去されます。

Version Up などに関連してこれを行う場合、新しい dviout の Uninstall は、より古い dviout にも有効ですので、新しい dviout.exe, dviout.hlp, dviout.cnf を上書きインストールして、Uninstall を行い、そのまま、インストールの手順を踏めばよいでしょう。

アンインストールの項も参照してください。


Property Sheetで、? を押し、対応するパラメータのところでマウスの左ボタンを押すと、多くの場合、そのパラメータの説明が表示されますので、それを参照してください。

また、対応するパラメータのあるProperty Sheetの[Help]ボタンを押したときに表示される説明も参考になるでしょう。


dviout.parというファイル名で、dvioutの存在するディレクトリにパラメータファイルを置いておくと、起動時に自動的に読み込まれます。

この読み込みの後、Property Sheet->[REGISTRY]で、対応するパラメータが読み込み設定されていると（+ の印がついている）、レジストリに設定したパラメータの値を読んで上書きされます（設定値が空の文字列なら、空に上書きされます）。

パラメータファイルに書いたものを優先させるには、対応するパラメータのレジストリからの読み込み設定を解除するか、レジストリからの読み込みの後で、上書きするようにProperty Sheet->[System]の-file:でパラメータファイルを指定します。


・印刷位置がおかしい、位置を調整したい([Printer])
・印刷のサイズがおかしい(Q_P1)。
・印刷に時間がかかる(Q_P2)。
・印刷の際はプレビューの際と異なるパラメータを用いたい(Q_P6)。
・プレビューで確認したページ、あるいは、範囲を印刷したい(Q_P4)。
・プレビューが正常なのに印刷がおかしい(Q_P10)。
・印刷のダイアログでコピー部数指定のCopies:が無効になっている。
・可能な印刷方式の種類とその違いは？(Q_P7)
・コンソール版dviprtによる印刷、あるいは、ほかのプログラムによる印刷をしたい。
・dvioutのLBP用ドライバでの印刷で、和文TrueTypeフォントを使いたい(Q_P5)。
・拡大／縮小をしてLBPで印刷するときの用紙サイズは？(Q_P8)
・内蔵ドライバによるプリンタの制御コードの取り込み。
・dviout内蔵ドライバでの印刷がうまくいかない(Q_P9)。
・dviファイルの文書をFAXで送るには(Q_P3)。
・FAX送信したら、ページ毎に複数回に分けて転送された（ジョブの統一／分割）。


たとえば、A4サイズで印刷するためには、以下のようになっていなければなりません。

1. TeXの原稿がA4サイズとして作成されている

2. [Paper]のProperty Sheetで、Paper sizeとして A4 が設定されている

3. 印刷のダイアログの[Setup...]の用紙サイズが A4 に設定されている

印刷する文字のサイズがおかしい、あるいは、A4に設定しても、そのサイズにならない、などときは、dvioutで使用しているdpiとプリンタの解像度が一致していない可能性があります（cf. 解像度の設定）。
Warningが表示されて、"Use driver resolution to print?"と尋ねられるのは、この解像度の不一致を示しています。


MS-DOSのdviprtの場合、LIPS3やESC/PageなどのLBPには、フォントのダウンロード機能を使うなど、最適化したデータ転送を行っていました。Windows95/NT用dvioutで、Windowsのシステムドライバに任せた印刷のとき、このような最適化は行われず、遅くなることがあります。

Windows95/98/NT用のプリンタドライバは、プリンタのメーカー側で改良され、新しいものが提供されていることが多いようです。ドライバの設定を変えたり、ドライバを更新すると効果があるかもしれません。

Property Sheets->[Graphic]の-cmode:がデフォルトのauto modeのとき、dviprt機能を使わないでWindowsのプリンタドライバを用いると印刷のときはpatch2のモードとなり、印刷が高速になる可能性があります。特にTrueType fontsのみを使った場合に効果があるでしょう。
patch2のモードは表示には適さないので、auto modeでは表示の際patch2のモードを用いません。また patch2 は、dviprt機能には対応していません。

注意: たとえば、内部メモリーを十分持っていない600dpi対応のLBPに対し、dviout for Windowsで、600dpiの印刷データを送ったとき、データを300dpiへ変換してから印刷する、などということがあるようで、極端にスピードが落ちることがあります。

必要なら、dviout for Windows内蔵のドライバを使うか（印刷のダイアログで dviprt をチェックする、LIPS3,4やESC/Pageの場合に特に有効で、[Printer]で、raw LIPS IVなどを設定しておく）、従来のDOS版のdviprt、あるいは、32bit版のdviprtをお使いください。この場合は、-LM: -TM: などの調整が必要でしょう。
外部の印刷プログラムもdviout for Windowsから使用できます（dviprtによる印刷）。


FAXモデムが、Windowsのプリンタとして登録されている場合、印刷ダイアログの[Setup...]で、FAXモデムを選択することにより、文書をFAXで送信できます。

複数ページを一回の電話接続で送るためには、印刷ダイアログの[Unite job] の項がチェックされていることを確かめてください。


印刷ダイアログに入る直前にプレビューしていたページのみを印刷するには、印刷ダイアログで、[Selection]ボタンを押します。

ページにマークをつけておいて、そのページを印刷する、あるいは、プレビューの際に範囲を指定しておいたページを印刷することができます。後者の場合は、ページスライダーが表示されていれば、範囲がそこにマークされます。

ページのSelectionの項を参照してください。


-dviprt:の設定によるdviout内蔵のLBP用ドライバでの印刷では、デフォルトではLBP内蔵の和文フォントが用いられますが、たとえば、LIPS IIIの場合は以下のようにすると、ゴチックのフォントにWindowsのTrueType和文フォントを用いることができます。

-dviprt:`lfgoth=81;0;k

上記の f以下の0で、goth*にLBP内蔵フォントを用いないことを指定しています。81はダミーです。ゴチックにどのようなフォントを用いるかは、Property Sheetの[WinJFont]での設定に従います。

k は、和文TrueTypeフォントもダウンロードして用いることを意味します。

プリンタ内蔵の和文フォントを全く用いない場合は

-dviprt:`lv0

のようにします。

より詳しくは、LBP用ドライバのサブパラメータ f, サブパラメータ kなどの項を見てください。


Property Sheetの[REGISTRY]を開きます。Default mode: Current mode:が共に 0 となっていて、印刷のときの mode に 2 を使用することにします。プレビューでは300dpi、印刷に600dpiを使う場合の設定例です。

まず（[Resolution]のシートで[Save]を押したことがなかったら、それを実行して戻り）、Current Name:が空白になっていたら Default などと書き、Current Print:に 2 を設定して、Save を押します（mode 0 における設定）。

次に、Current mode:とCurrent Print:の両方に 2 と書き、Current Name: に Default Printerなどと書きます。[All Clear]を押し、変更するもの（-dpi: のみのときは、-dpi:）を選択して[Auto Load]を押して + の印を付け、Saveを押します（mode 2 における設定）。

次に、[Resolution]のシートに移り、-dpi: に 600 を設定して[Save]を押し（mode 2 における設定）ます。600dpiのフォントの所在が300ddpiの時と異なっているなら、[Font]のシートでも設定を行って[Save]を押します。

最後に、[REGISTRY]に戻って、Current mode:に 0 を設定して（mode 0 に戻す）、[OK]または[Cancel]で抜け出ます。

通常の mode 0 の状態で、Windowsのプリンタドライバで印刷すると、300dpiから自動的に 600dpi（mode 2）に変わって出力され、印刷後は 300dpiに戻ります。

メニューバーの Option -> Mode で、mode 2 の Default Printerを選んで、600dpiにすることも出来ます。


1. Windowsのプリンタドライバを用いた印刷
印刷ダイアログのdviprtのチェックをはずしたデフォルトの状態

・color specials、カラー画像(Q_O2)、FAX送信(Q_P3)に対応
・ページ毎のポーズ機能
・印刷データ出力中でのキャンセルが可能
・プリンタメーカのドライバを使うことにより、各種プリンタに対応
・TrueTypeフォントを使うことにより、高速化や良質のPDFファイル変換を支援（[Graphic]->color specials: -cmode: が auto mode(p2) あるいは patch2 の場合）
・-cmode: が auto mode(p2) と auto mode(rep) とではドライバへのデータの転送方式が異なる（前者はTrueTypeフォントの描画など多くをドライバに任せる）。どちらが良いかはドライバやフォントによって異なる。

2. dviout内蔵のドライバを用いた印刷
-dviprt:の先頭が +` , または ` となっていて、印刷ダイアログのdviprtがチェックされた場合に対応

・出力コードが最適化され、特に LIPS III/IV, ESC/Page などのLBPでは高速に印刷でき、プリンタ内蔵の和文フォントを使用可能
・プリンタの制御コードの取り込みが可能
・プリンタのコンフィギュレーションファイル（CFGファイル）を定義可能。これにより、各種プリンタに対応でき、PBM, EPSFなどの画像形式など自由な形式での出力が可能

3. 外部のプリンタドライバを呼び出すことによる印刷
-dviprt:に外部プログラムの呼び出し方が記されており、印刷ダイアログのdviprtがチェックされた場合に対応

・コンソール版dvioutや、PostScript用プリンタに対するdvipsなどによる印刷が可能


印刷のダイアログで拡大／縮小を行った場合は、印刷のダイアログの[Setup...]ボタンを押して、用紙サイズと向きを設定、または、確認してください。
Windowsのドライバを使うか、dviout内蔵のドライバを使うかの如何にかかわらず、[Setup...]で表示されたダイアログに示されたものになります。

[Setup...]ボタンを押さなかった（あるいは、押しても[Cancel]で抜けた）場合
・Windowsのドライバの場合は、プリンタドライバに設定されているデフォルトに従います。実際に出力する紙面サイズとの誤差が大きい（縦または横の誤差が5%を越える）ときは、確認のメッセージが出ます。

・dviout内蔵のプリンタドライバを用いるときは、拡大／縮小を加味して用紙サイズを推定し、その用紙を用いた印刷をするよう、LBPにコマンドを送ります。
たとえば B4 サイズでプレビューしていて、印刷のダイアログで B4 -> A4 の縮小（81.6%）をチェックした場合には、A4 用紙を使え、というコマンドを LBP に送ります（実際には、誤差も考えて、77.6% から 85.6% までの縮小のとき、このようになります。）用紙が推測できないときは、プレビュの際の紙面サイズに従います。


印刷ダイアログで、dviprtをチェックした場合、dviout内部のドライバにより、ページの画像データをプリンタの制御コードに変換して印刷を行います。

プリンタの機種の違いや、プリンタ側のバグのためプリンタが仕様通りに機能しない、などの理由により正常に印刷できない場合があるようです。

LIPS III/IV, ESC/Page などの内蔵のLBP用ドライバを使う場合、LBP側の設定、および、解像度が高い場合は、LBP側に十分なメモリーがあるかどうかに注意してください。

パラメータを変更して試してください。たとえば、LIPS IVの場合

+`lD600;d0
+`lD600;v0
+`lD600;d0;c;u-10

などを試してみます。

どうしてもうまくいかない場合は、Windowsのドライバを用いた印刷に切り替えるか、プリンタのコンフィギュレーションファイルを作成して対応してください。


Windowsのプリンタドライバを用いるデフォルトの印刷方式(Q_P7)で [Graphic]->color specials: -cmode: が auto mode(p2) であったとします。一時的に -cmode:を patch2 に変えてプレビューしてみます。

これはauto mode(p2)での印刷と同じやり方でのプレビューを意味するので、これでプレビューが正常であるにもかかわらず印刷が正常でない場合は、Windowsのプリンタドライバ（の設定）かプリンタに問題があると思われます。

プリンタドライバに問題がある場合（cf.知られている不都合箇所）は、auto mode(rep)を用いると解決することがあります。

上記のチェックで印刷とプレビューとで、解像度を変えるなど何らかのパラメータの値を変更している場合は、印刷におけるパラメータのもとでプレビューしてください。紙面サイズや解像度の不適合がある場合は、印刷の際にWarningが出るので分かるでしょう。


・画像データファイルを取り込む。
・画像データファイルの取り込みサイズがおかしい(Q_O1)。
・画像データファイルのspecials
・Postscriptを使った画像表示に失敗する(Q_O9)。
・EPSFの取り込みで端が欠ける([Graphic]->-gclip: PostScript specialのパラメータ)
・カラー画像データを扱う(Q_O2)。
・カラー画像データの表示の色がおかしい(Q_O17)。
・カラー画像の表示が極端に遅い(cf.-gfit:)。
・ルーペでのカラー画像拡大ができない、画像が荒い(cf.-gfit:)。
・プレビューで画像の線の一部が消える(Q_O16)。
・PoststScriptのカラー画像を白黒でも用いたい(Q_O14)。
・LaTeX2eのgraphics packageを使う(Q_O18)。
・PSfrag packageを用いる。
・tpic specialsを使う。
・取り込んだWMF中の画像や文字のサイズがおかしい(Q_O29)。
・表示中のページをEMFまたはBMPファイルなどとしてセーブする(Q_O7)。


magstepや -mag: による拡大の影響を受けるかどうかのオプション -gsize: や、PostScript \special のときのパラメータ clip などに注意してください。

また、取り込み画像の大きさをLaTeX2eのgraphic packagesのgraphics.styを用いて指定した場合は、うまくいかないことがあるので、graphicx.styを用いるようにしてください。

PostScriptファイルではあっても、正しいフォーマットのEPSF(Encapsulated PostScript File, %%BoundingBox: の指定がファイルの初めに存在)ではないことがあります。
この時は、PostScript \special のサイズ指定は正しく動作しません。


PostScriptのカラー画像ファイルの場合、プロパティーシートの[Graphic]（の -GIF:）で16色以上のBMP形式を指定すれば、カラーでプレビュー出来ます。ただし、表示やスクロールは遅くなります。

プレビューには256色BMP形式程度が適当と思われますが、Windows側の設定は、出来るだけ6万色以上のモードを選んでください。画像以外の部分にgray scale表示で多色を使っているので(cf.Q_V8)、両方の表示には多色が必要です。

カラーのBMPファイルのサイズは、大変大きくなります。メモリーやハードディスクの空きが十分なければなりません。関連して、600dpiなどの高解像度のフォントを使うプレビューの場合は、-gfit: を ON にチェックしてください。

Windowsに対応したカラープリンタを使うと、Windowsのドライバによって（印刷のダイアログで、dviprtのチェックをはずす）、上記の画像がカラーで印刷されます。

-GIF: を monochrome に設定すると、色の違いは適当な模様の違いで表現され、白黒プリンタでは、濃淡の違いとなって表現されます。一方、カラー画像のままでWindowsのドライバによって白黒プリンタに印刷した場合の結果は、ドライバ（のオプション設定）次第で画調がことなります。

その他各種の画像データファイルに対応しています。


メニューバーのFile MenuのSave as imageを選ぶと、現在表示中のページ全体または矩形領域（Display->Region で指定）の画像イメージが、EMF形式やBMC/BMP/PDF形式などでファイルにセーブできます。

PDF形式には、20040204以降の dvipdfmx が必要です．

EMF/BMC/BMP 以外の場合，セーブする拡張子に対し、その前に dvi$ をつけた名前のバッチファイルが dviout のディレクトリのサブディレクトリ utility にあれば、それを実行します。
PDFファイルの場合は、拡張子が .pdf で、utility\dvi$pdf.bat という配布パッケージにあるものが実行されます。
このとき渡されるパラメータは

   %1  横の原点移動  （単位は cm）．デフォルト(移動なし）は 2.54cm
   %2  縦の原点移動  （単位は cm）．デフォルト(移動なし）は 2.54cm
   %3  紙面の横幅    （単位は cm）
   %4  紙面の縦の長さ（単位は cm）
   %5  出力するページの番号（１つのみ）
   %6  DVIファイルのフルパス名（" " で囲まれた形式）
   %7  出力ファイルのフルパス名
   %8  横の移動      （単位は cm）．デフォルト(移動なし）は 0cm
   %9  縦の移動      （単位は cm）．デフォルト(移動なし）は 0cm

該当するバッチファイルが見つからない場合は，ABC output plug-in が探がされます。

（256色以下をサポートした）ABC output plug-in を dviout のディレクトリか、Susie のディレクトリ、またはその exp_plug サブディレクトリに置くと、対応した画像形式での出力が可能です。たとえば、expng.xpi は PNG 用のプラグインです。出力形式は、出力ファイルの拡張子で判断されます。

EMF形式またはBMP形式のときは、ファイルでなくてクリップボードにコピーすることができます。

BMC/BMP形式の場合は、gray scale で表示されている場合や、HyperTeXやSearchで色が付けられている場合も、そのままそれが保存されます。

ただし、dvioutが取り込んだ２色白黒でないカラーの画像ファイルや、LaTeX2eのgraphic packagesによって色づけられた文字、白黒反転文字などは出力されません。

EMF形式（Enhanced Windows MetaFile）の場合は、カラー画像ファイルも取り込め、TrueTypeフォントはスケーラブルな形式で記録されるので、サイズ変換に関して有利です。


1. Property Sheets->[Graphic] の Ghostscript のところで On がチェックされていますか？

2. Unknown special:...の表示が出る場合
dviout でサポートしている \special を用いてください（cf. 画像データファイル）

3. unable to open foo.ps(PS)の表示が出る場合
読み込むべきPostScriptファイルが見つかりません（-gdat: の設定に注意）。

4. Cannot execute gswin32(2)のように、Ghostscriptが実行できない、という表示が出る場合
-gsx: の指定をチェックしてください。

5. Failed to make foo.pbm ... または foo.bmp ... の表示が出る場合。
Ghostscriptを使って、PostScriptファイルから、画像のデータファイルが作成できなかったことを示しています。Ghostscript側の設定に問題がある可能性が大ですが、原因は...

・Ghostscript用のライブラリのパスが正しく設定されていなかった（Ghostscriptのマニュアルを参照し、環境変数の設定などに注意してください）。
・Ghostscriptが処理できないパラメータ、あるいはPostScriptファイルであった（多くの画像ソフトやWindowsのPostScriptドライバーは正しくないEPSFファイルを出力します）。
・-GIF:で指定したraw PBMファイル（または、BMPファイル）の出力をサポートしていないGhostscriptを用いた（Q_E4）か、そのファイルの書き込みに失敗した（カレントディレクトリ、または-gdat: の設定に注意）。
・-gsx: でのGhostscriptのパスの指定は、空白を含んではいけません。

Ghostscript（GhostViewではありません）が正常に実行されるか、コマンドラインから、付属のファイルepsfdoc.dviも含めてテストしてみてください。

たとえば、parameter file:がtmp$.@@@ で、c:\gstools\gs5.10\gswin32c.exeが実行ファイルであった場合、エラーで中断した状態からMS-DOS Windowを開き、dviファイルの存在するディレクトリに移って以下を実行してみて下さい。表示されるメッセージは、エラーの原因解明に役立つでしょう。

c:\gstools\gs5.10\gswin32c @tmp$.@@@

注意. なお、メニューバーの Display -> Graphics のチェックをはずすと、グラフィックの取り込みを行わないようになります。


Property Sheetsの[Graphic]の-GIF:で、monochrome BMP、または、monochrome PBMを指定すると、PostScriptのカラー画像でも、gray scaleを使った白黒画像になります。

このときmonochrom BMPでなくて、monochrome PBM を指定すると、Ghostscript で作成されるファイル名がカラーのときと異なるので、上書きせずに両方のファイルを残すことができます。

これは、ハードディスクの消費量は増えますが、両者を場合によって使い分けたいときに便利です。


プレビューのときに、取り込んだPostScript画像の線の一部が消えてしまうことがあります。これは、Ghostscriptで作成したカラーBMP画像を、Windowsに備わった機能を使って縮小表示しているためです（Windowsの仕様のようです）。

ルーペなどで当倍に拡大して表示した画像は、このような問題は生じないでしょう。また、白黒画像はWindowsに任せずにdviout側でgray scaleの縮小表示を行っているので、縮小しても線が消えてしまうことはないでしょう。

-gfit: をONにしてみてください。


プロパティーシートの[Graphic]で、256色以上のBMPを指定する必要があります。

ただし、Windowsの画面設定でディスプレイを256色モードにして、dvioutで256色のカラー画像を表示しようとしても、普通は正しい色に表示できません。

Windowsのシステムが既に何色か使っており、dvioutは表示に7色16段階のグレースケールで（1677万色中の）最大112色を使い、さらに256色のカラー画像を取り込もうとすると、全体では256色では不足していることが考えられます。

画像データが256色であっても、Windowsの画面設定では6万色以上を設定しておくことが望まれます。


LaTeX2eのgraphics packageの graphics.sty または graphicx.sty、あるいは color.sty を用いた場合、dvips用のdviファイルに最も良く対応し、文字列の色付け、文字列や画像の回転、拡大縮小、EPSファイルによるカラー画像データ取り込みなどが可能です。

ただし、カラー画像は90度の整数倍以外の回転に対応していません。また、dviprt機能による印刷では、プリンタ内臓和文フォントやダウンロードフォントの拡大縮小は、サポートされません。

付属のgraphics package用のドライバ dviout.def を用いれば、PBM, BMP, WMF/EMF(Susie plug-in を併用すればその他多種)の画像取り込みにも対応できます。なお、画像ファイルとしてPostScriptファイルのみを用いるときは、デフォルトの dvips.def と互換性があります。

この場合、付属の bmc.exe を（-b オプションをつけて）用いれば、画像ファイルの BoundingBox を書いたファイルを作成することができます。これは、graphics packageが画像のサイズを決めるときに参照されます。たとえば

bmc -b foo.bmp

のように実行します。

PostScript specialの使用例（より詳しくは、graphics packageのgrfguide.texや、付属のdviout.dtxをLaTeX2eで処理したドキュメント）を参照してください。

なお、dvioutではLaTeX2eのgraphics packageによる回転、および、PostScript以外の画像や文字列の拡大縮小で、スムージング処理を行っていません。

これらに対し、より完全で良質の出力を期待する場合は、PostScriptプリンタを用いて、PostScript専用のdviドライバを用いるのが良いでしょう。


WMFは、デバイスインディペンデントな形式でないので、取り込んだ場合に画像や文字のサイズが期待すべきものにならないことがあります。EMF(Enhanced MetaFile)形式を用いてください。


PSfrag
以下のようにすると dviout で PSfrag package を利用できます。

1. Ghostscriptが参照するディレクトリに PSfrag package に付属している psfrag.pro をコピーしておく。

2. PSfrag package(Version2) に付属していた PSスクリプトps2frag.ps を、環境変数GS_LIBで定義されたGhostscriptのサーチパスに入れておく。

dviout は ps2frag.ps と Ghostscript によって PSfrag が処理する EPS ファイルに対し、文字列の配置情報が書かれた補助ファイル（拡張子 .pfi）を自動作成します。既に作成されたものが存在していればそれを使います。

たとえば、test.ps に対する補助ファイルは

gswin32c -DNODISPLAY -dBATCH -q ps2frag.ps test.eps > test.pfi

によって作成できます。


・dvioutをデスクトップに登録する(Q_O5)。
・複数のdvioutが起動しないようにしたい(-multi:)。
・DVIファイルに適当なアイコンを設定し、それのダブルクリックでdvioutを起動させる(dviファイルのdvioutへの関連付け）。
・エディタなどの他のプログラムとの連携でdvioutを用いる。
・dvioutが参照する外部ファイルや環境変数は(Q_O19)？
・dviout for Windowsにとってのカレントディレクトリは？
・各種ファイルの指定で、dvioutの場所を基準として指定したい(Q_O21)。
・dviout for Windowsのディレクトリ（フォールダ）を変更したい(Q_O26)。
・DVIファイルやそれが存在するフォルダの履歴は？
・DVIファイルの最初／最後のページから表示したい（->フォルダの履歴）


エクスプローラで、dviout.exeの存在するディレクトリを開き、dviout.exeのアイコンの上でマウスの右ボタンを押して、そのままデスクトップの置きたい位置までドラッグして放します。そのあと、「ショートカットをここに作成」をクリックします。

「dviout.exeへのショートカット」が出来ますが、そのコメントはマウスの左ボタンのクリックで編集して変更できます。


dviout.hlp : dvioutのオンラインヘルプファイル。
dviout.cnt : dvioutのオンラインヘルプ用のコンテンツファイル。
dviout.par : dvioutのあるディレクトリ、あるいは、Windowsのシステムディレクトリに存在すると、パラメータファイルと解釈されて読み込まれます。dviout.iniという名前にすることも可能です。
dviout.vfn : デフォルトの和文フォントおよびTrueTypeフォント定義ファイル名です。和文フォントにWindowsのTrueTypeフォントのみを使用する通常の場合は、不要です。
dviout.gss : これがdvioutのあるディレクトリに存在すると[Guess]によるフォントの所在の推測の際に参照されます。
***.cfg    : プリンタ定義ファイル（通常は使いません）。
template   : フォントの生成方法を定義したファイル。ファイル名は自由で、-gen: によって指定することで有効になります。
par\***.par: Option->Choose Parameters で使われるパラメータファイル
par\***.pas: 上記と同じだが、表示を隠したもの
par\***.pgm: 印刷ダイアログの[Option]で使われるページマクロ定義ファイル
par\***.pgn: 上記と同じだが、表示を隠したもの

パラメータTEXPK, TEXFONTS, TEXKNJ, TEXFLIは、環境変数によっても定義できます。
また、環境変数TEXCFGがあれば、そのディレクトリにおいても dviout.parが探されます。環境変数TEMPまたはTMPがあれば、それはテンポラリファイルを作成するためのディレクトリと解釈します。


-vfn: や -TEXPK: などでファイルを指定する場合に、dvioutをインストールしたディレクトリを基準に指定することができます。

パス名の先頭に ^x を付けると、それが dviout のインストールディレクトリに置き換わります。例えば、c:\dviout に dviout.exe をインストールした場合

-gen:^x\utility\template

という設定は

-gen:c:\dviout\utility\template

という設定と同等です。


dviout for Windowsの入っているディレクトリ（フォルダー）は、名前を変更したり、別の場所に移しても特に問題は生じません。

ただし、フォントファイルなどdvioutが参照しているファイルを移動した場合は、その所在の設定をし直す必要があります（Property sheetsに示されるものがすべてです）。

dvioutと共に移したものでも、それがdviout.exeのディレクトリからの相対パスで指定してあれば、変更不要です(Q_O21)。


フォルダの履歴
メニューバーの File あるいは File -> History で、過去に扱った DVIファイルの履歴が表示されます（前者は、前回起動した dviout までの履歴で、後者は現在の dviout も含む）。

適当なDVIファイルを選択することにより、そのDVIファイルが表示されます。このとき CTRLキーを押していると、前回抜け出たページでなく最初のページとなり、CTRLキーとSHIFTキーの両方を押していると、最後のページとなります。
一方、SHIFTキーのみを押していると、そのDVIの存在するフォルダが表われるので、そこからDVIファイルが選択できます。


・NO_FONT: *** (Q_E1)
・Unpack_Error: *** (Q_E2)
・Cannot resolve Fonts
・Warning: Cannot find cmr10.tfm for TT Font (Q_E3)
・Ghostscriptが起動されるが、Unknown Device などという表示が出て、PostScriptファイルの画像を取り込めない(Q_E4)。
・Not enough memory(Q_E8).
・このプログラムは不正な処理を行ったので、強制終了されます(Q_E7)。
・Warningのメッセージウインドウがわずらわしい(Q_E9)。


dviファイルで使用されているフォントが見つかりません。
探されたフォントの情報が表示されるたはずなので、-TEXPK: などの設定を確認してください。

本当に存在していないフォントが使用されている場合は、-F: 代替フォントを指定することで、取り敢えず表示/印刷を行なうことができます（存在しないフォントへの対処）。

フォントを作成する、-TEXPK: を修正する、などを行います。欧文フォントの場合は、存在しないフォントの自動生成機能（-gen: により設定された手続きで、METAFONTを起動し、生成したフォントを格納）を使うこともできます。

注意： 表示されるパス名は -TEXPK: に基づいて dviout が探したパス名であって、必要なファイルの名前とは限りません。

Help->Font Infoでフォント情報をチェックするとよいでしょう。


PKフォントが壊れています。削除して再生成するのがよいでしょう。


欧文TrueType Fontを使用しましたが、(この例の場合にはcmr10 に)対応するtfmファイルが見つかりませんでした。

この時は、文字を並べるための情報を *.ttf から得ていますので、文字位置に「ずれ」が生じている可能性があります。tfmファイル *.tfm のあるディレクトリ（-TEXPK: と異なり、フォント名は含めない）を -TEXFONTS: に正しく設定してください。


Ghostscript で pbmraw, bmpraw, bmp16, bmp256, bmp16m などの出力形式（Device）がサポートされていて、これと -GIF:の設定が対応していなければなりません。

なお、特許との絡みで、Ghostscript の　Ver.2.6.2 の頃以降は、gif 形式の出力はサポートされていませんのでご注意下さい。


文字列サーチは、dviファイルを調べるだけであり、100%の正確さを期することは不可能で、間違った結果になることがあります（cf.-sFont:）。

英単語では、Word単位のサーチにし、あまり短いものは避けた方が、間違ったものがサーチされる可能性は減ります。

NTT JTeXにおいて、和文の文字列のサーチには対応していません。


このエラーは、dviout for Windows側に問題がある可能性が高いです。

dvioutに問題がありそうなときは、起きたときの状況など、再現可能な情報を開発者、または、dviout User's 倶楽部にお知らせ下さい。


dvioutが作業するために必要なメモリーを確保できません。使用フォントの解像度、ページサイズなどが、必要なメモリーサイズに大きく影響します。

たとえば、用紙サイズA3で 600dpi プリンタに印刷するときは、ページの展開バッファに8M byte強、転送用の BMP 形式データに 8M byte強のメモリーが必要となります。

コンピュータが使用可能なメモリーが十分あることが基本ですが、dviout 以外のもののメモリー使用も影響します。


ツールバーの View->Warning を選択してチェックをはずすと、以下Warningのときにメッセージ表示のためのウインドウが開くことがなくなります。

メッセージは記録されているので、Help->Information などでこのウインドウを開くと、遡ってメッセージを見ることができます。上記チェックがはずれていても、このウインドウを開いたままにしておけば、そのときのメッセージが表示されます。

このチェックのON／OFFの状態は、dvioutを終了すると、次回のdvioutには引き継がれません。


Cannot resolve Fonts

dviout が -TEXROOT: -TEXPK: に基づいて必要なフォントを探したが、見つからなかったことを意味します。

通常見つからなかったフォント、および探したファイルの情報が表示されます。以下のような原因が考えられます。
以下の意味が不明確な場合、あるいはより詳しく調べたい場合、[再試行]のボタンがあればそれを選んで、表示されるメッセージを保存しておき（マウスを使ってエディターに表示内容を移す）、その後 Help → Troubles in dviout の該当個所を参照して下さい。

1. この表示の前に METAFONT が起動してフォント作成を試みた場合（すなわち -gen:フォントの自動生成が設定してあるとき）

・METAFONTで作成できないフォントである。
たとえば、Virtual font を使って TrueType font で表示するはずが、対応する TrueType font がWindowsのシステムに登録されていない。

・METAFONTがフォントの作成に失敗した。
このエラーメッセージが出た時点でdvioutを抜けずに、DVIファイルのあるディレクトリまたはWindows のテンポラリディレクトリ（環境変数 TMP または TEMP[これは定義されていなければならない]で示される）に GEN_TMP.BAT というバッチファイルが生成されていれば、それを実行すると原因究明に役立つ。
このバッチファイルは、dvioutがフォント作成のために実行したコマンドのコピーである。

-gen: の設定が正しくない、環境変数 TMP や TEMP が正しく定義されていない、texmf.cnf の設定がおかしい、mf.exe にパスが通っていない、標準でないシェルを使ったためバックグランドで動作するMETAFONTに対する環境変数がおかしい、などの原因が考えられる。

・mktexpk などを使って正しくフォントが生成されたが、dviout がそれを見つけることが出来ない。
フォントが生成されて格納された場所とファイル名をチェックし（次の 2 を参照）、-gen:や texmf.cnf の設定と -TEXPK: とを比較する。

注意. フォントが作成されたかどうか、作成された場合はどこに作成されたか、を例えば以下のようにチェックする。

2. -TEXROOT: -TEXPK: の設定が正しくない。
kpathsearch がサポートされている場合、kpsewhich.exe を使うとフォントの所在が分かります。
それには、たとえば必要ならCannot resolve Fontsという情報表示Windowsで先頭に必要なフォントと解像度が示されているページに移り、その部分がたとえば

  cmr17.360(1800)

となっていたら(1800は解像度の5倍の値)、MS-DOSプロンプトのコマンドラインから

  kpsewhich cmr17.360pk

のようにします。このとき以下を実行した情報も役立ちます。

  kpsewhich --expand-braces $TEXMF
  kpsewhich --expand-braces $MFINPUTS
  kpsewhich --expand-braces $MKTEX_MODE
  kpsewhich --expand-braces $PKFONTS

3. 存在せず生成もできないフォントである。
-F: によるフォントの代替機能を使うことができます。このときは、フォントの自動生成機能を無効にしておきます。


・文字列サーチの結果が正しくない(Q_E6)。
・Help Topics の表示がキーワードのみで、目次の項が出てこない(Q_O13)。
・フォントの自動生成やGhostscriptの起動で、止まってしまう(Q_O23)
・dvioutの立ち上げ時にエラーが生じて、起動が正常にできない(Q_O25)
・知られている不都合箇所
・説明に書かれているように設定したが、うまくいかない(Q_O11)。


dvioutで表示や印刷が出来る状態になっているとします（インストール）。
インプレスのTeX for Windowsで使われているデバイスドライバは、windvi.exe, windvi32.exe, wdvipro.exe, wdvip32.exe などという名前の実行ファイルになっています。それと同じ名前にして dviout.exe で置き換えてしまうと、TeX for Windowsの総合環境でdvioutを使うことができます。

たとえば、wdvipro.exe が使われている場合は、（上書きして消してしまわないように wdvipro.exe を wdvipold.exe など他の名前にし）dviout.exe のファイル名を wdvipro.exe と変更して、wdvipro.exe が存在していたディレクトリにコピーするだけです。
このとき dviout.hlp, dviout.cnt も wdvipro.hlp, wdvipro.cnt と名前を変更して同じディレクトリに入れておけば、ヘルプも使えます。

TeX for Windows用に開発された各種エディタのマクロなども使用可能と思われます。

注意： インプレスの欧文 TrueType Fontを使う場合は、Option->Setup parameters...->[WinJFont] のjfm/tfm の edufaultに対し、Japanese TT のチェックをはずし、code type の定義を WinTeX に変更します（[Define], [Save], [OK]）。
[Font]の -TEXPK: には、和文と欧文のjfmファイルとtfmファイルを指定します。


関連するヘルプなどの説明と異なる結果になったり、エラーが起こる原因の可能性として、以下のようなものが挙げられます。

1. 説明などの読み違い
2. 説明の間違い
3. dvioutのバグ
4. Windows95/98/NT のバグ

3, 4については、dvioutでの設定や、Windows95/98/NTにおける環境が特別な場合でのみ起こる、ということも有り得ます。

上記の2. 3, 4と判断できる場合は、開発者側で再現可能な詳しい状況をdviout User's 倶楽部、または、開発者にお知らせ下さると、どこに原因があるかを突き止め易く、短期間で対処される可能性が大です。

dvioutは、Windowsのシステムがサポートしている様々な低レベルの処理機能を使っていますが、開発途中で幾つかのバグや不都合な点に出会い、多くはdviout側で対処しています。

3と判断できる場合は、dvioutのソースファイルが公開されていますので、ソースレベルでの修正箇所をお知らせいただけると大変助かります。


Help -> Help Topics で、キーワードの項のみで目次の項が現れない場合、dviout.cnt ファイルをWindowsのヘルプシステムが見つけられない可能性があります。

dviout.exe の存在するディレクトリ中の dviout.gid という不可視ファイル（Windows側が自動的に作成したファイル）の情報が間違っているとこのようになるようです。

そのディレクトリが、c:\dviout であったとすると、DOS窓から

attrib c:\dviout\dviout.*

とすると、そのファイルの存在を確かめられます。

attrib -H c:\dviout\dviout.gid
del c:\dviout\dviout.gid

として、それを削除することによって対処できるようです。

また、エクスプーローラを起動し、メニューバーの表示(V)->オプション(O)の表示タグから すべてのファイルを表示(S) のラジオボタンを On にすることにより、エクスプローラからも上記の削除が可能です。


Windowsのシステムや、それを動かす機種や環境によっては、METAFONTやGhostscriptを起動したまま、dvioutが止まってしまう、という現象が生じることがあるようです。

これは、dvioutがハングアップしたのではなく、呼び出したプログラムが終了するのをdvioutが待っているだけです。

Windowsのシステムや環境に問題があるようですが、以下の何れかの方法で、解消できるようです。

1. mktexpk または MakeTeXPK を -gen: に指定している場合は、それを ` に続けてフルパス名で拡張子 .exe をつけて指定し、そのあとに必要なパラメータを指定するようにする。

2. スタート -> プログラム -> MS-DOS プロンプト、Windowsのシステムディレクトリの command(.com)または cmd(.exe)、あるいは同じ場所の _default.pif（存在しないこともある）などのプロパティー（マウスボタンの右クリック）を調べる。
「プログラム -> プログラム終了時にウィンドウを閉じる」のチェックは ON で、「その他 -> ウィンドウが非アクティブな場合 -> 常に実行を中断」のチェックが OFF かどうかを確認し、異なっていれば設定を修正する。
また、「その他 -> ほかのプログラムの優先度」をより[低]の方に設定する。

3. -Wshow: を ON にしておく。

4. 何らかの方法（たとえば、CTRL+ALT+DEL）で、起動したプログラムを終了させる。


Registryの内容が何らかの理由で壊れてしまうと、dvioutの起動時にエラーとなり、パラメータの修正などができなくなる可能性があります。このときは、コマンドラインから直接

dviout -NULL

として、dvioutを立ち上げてください。Regstryからパラメータを読み込むことなく、dvioutを起動させることができます。なお、dviout にパス通っていないときは、プログラム名をフルパス名で指定してください。


・キーやボタンにページジャンプなどの機能を定義したい(Q_O10)。
・ツールバーのUserと表示されるボタンは(Q_O4)？
・過去に扱ったファイルのリストから特定のものを消したい(Q_O24)。
・インプレスのTeX for Windowsでdvioutをプレビューや印刷に用いる(Q_O6)。
・HyperTeXとは？
・インターネット上のdviファイルをdvioutで表示する(Q_O8)。
・プレビュー画面中の単語を辞書で調べたり、URLを実行する(Q_O27)。
・パラメータの調整などのため、より多くの情報を表示させたい(Q_O15)。
・Option->Installを重複実行してもよい(Q_O20)？
・A4, B5などの紙面サイズをdvioutが自動認識してほしい(Q_O22)。
・dviout独自の拡張機能(Q_O28)
・機能を拡張したい(Q_O12)。
・プレビューまでの内部動作(Q_O30)
・dvioutのソースファイル


Option->Install を既に行った後、再度 Option->Installでパラメータの初期設定や、スタートアップメニューへのdvioutの登録などを実行しても何ら差し支えありません。

異なる設定を行うと、以前の設定が書き換えられるだけです。Option->Uninstallの必要はありません。

dviout for Windowsの入っているディレクトリ（フォルダー）を変更した場合などは、Option->Installを再実行するとよいでしょう。


NTT JTeXでの日本語のフォントを、WindowsのTrueTypeフォントで代用するには、min10.tfm などのアスキーpTeXの日本語フォントのフォントメトリックファイルを -TEXPK: で指定し、-ntt: を ON にします。このとき、-L: の設定は、フォント名をカットしない、または、中央をカット、になっている必要があります。

NTT JTeX で新たな日本語フォントを定義した場合は、-nttF: オプションを用います。


ツールバーのニコニコマークのボタンは、Userが機能を再定義できます。Property Sheets->[Key]の Key: の最後の方にあるButtonがそれに対応しているので、左の Function: から選んで機能を定義できます。

その左の5つのツールバーのボタン（User1,...,User5）も再定義可能で、合計6つのボタンに機能が設定できます（cf.Q_V10）。

[Save] で Registry に記録し、[REGISTRY]で -key: を [Auto Load] に加えて起動時のデフォルトになるように[REGISTRY]での[Save]で設定できます（cf. Q_S1)。


dviファイルのdvioutへの関連付けをしておくと、インターネットエクスプローラが拡張子dviをもつdviファイルを読み込んだとき、自動的に dviout が起動され、プレビューや印刷を行うことができます。

dvioutで表示されているHyperTeXでの飛び先が、インターネット上のdviファイルであった場合は、マウスの左ボタンのクリックにより、それが自動的にdvioutで表示されることになります。


たとえば、「B」のキーを押したとき、前のページに戻るようにするのは、以下のようにします。

1. Option -> Setup Parameters... -> [Key] を選択します。

2. Function: のボックスで、Previous  Page を選択し、Key: のボックスで B を選択し、[Define] を押します。

3. [Apply]を押すと、現在のセッションに適応されます。

4. [Save]を押すと、Registryにセーブされ、次回からも、定義したものがデフォルトになります。
[REGISTRY]のシートで、リストボックスの key の項の先頭に + が付いているのを確認しておいてください（ついていなければ、[Auto Load]キーを使って、+ を付加して、[REGISTRY]での[Save]キーを押してください）。

注意：キーは、大文字と小文字が区別されますので、「b」にも同様の機能を持たせるには、上記の2に続いて、Key: のボックスで「b」も選択して、[Define]を押します。

上記の3, 4は、すべてのキー機能の定義や変更を行ったあとで、１度実行するだけでOKです。

ツールバーのボタンに機能を設定する場合も同様です。[Key], Q_O4, Q_V10などを参照してください。


\special については、ユーザ側でかなり自由に定義して使えるような機能を計画中です。

そのほか、様々な機能の要望が有り得ます。dvioutのソースファイルは完全に公開されており、それを基に、ユーザ側で自由に機能を付け加えることができます。

有用な機能を付加したり、改良を行って、dvioutの公開版に含めると良いと思われる場合は、是非、開発者 あるいは dviout User's 倶楽部に連絡してください。


dvioutのソースファイルは、実行ファイルと共に公開されています。

Visual C Ver.5.0 または Ver.6.0 を用いてdviout for Windowsの実行ファイルdviout.exe を作成することができます。この C コンパイラが正しくインストールされている状態のとき、以下のようにして dviout.exe が作成できます。

1. コマンド版のコンパイラが実行可能なように環境を設定します。

2. 適当なディレクトリにdvioutのソースファイルを展開します。

3. MS-DOSプロンプトのWindowで、ソースの展開されたディレクトリをカレントディレクトリにして、以下のコマンドを実行すると、dviout.exe が作成されます。

    nmake /f makefile.vc

なお、C++ Builder 4.0 を使う場合は

    make -fmakefile.cpb

としてください。

Borland C 5.01J や Visual C Ver.4.0 を用いて dviout.exe を作成することもできます。 Borland C を使う場合は、展開されたファイル makefile の先頭の部分に

BC5=C:\BC5

という行がありますが、Borland C のインストールされているディレクトリがこれと異なる場合は修正し、ソースファイルが展開されたディレクトリをカレントディレクトリにして、make を実行します。C++ Builder 4.0 の場合も必要なら同様の修正を行います。

HELPファイルは、Make Helpを使って作成されています。そのソースは、dviout.mhp および dvioute.mhp です。hcw.exeが必要です（hc31.exe ではエラーが出ます）。

注意１. なお、dviout.cnt および dvioute.cnt は、Make Help が出力したものを修正して用いています（附属の chghlp.c をコンパイルしてできる chghlp.exe はそれを自動的に行う）。Make Help を実行すると、dviout.cnt が上書きされてしまうので、ご注意ください。

注意２. 変更を加えた dviout.exe を配布する場合は、オリジナルと異なることが分かるようにしてください。
なお、version.h の VERSION_NO, ABOUT_VERSION の定義を書き換えれば、Help -> About dviout などでの表示も変更されます。


dviout for Windowsをコマンドラインから -wait=0 というオプションを付けて起動すると、以下のようになるので、パラメータの調整などに便利です。

・不都合箇所などについてのWarningがより多く表示されます。

・Ghostscript起動時に渡されるテンポラリなパラメータファイルが消されずに残ります。


TeXが処理したdviファイルには、LaTeXのソースファイルなどで指定する A4, B5などの紙面サイズや、Landscapeなどの紙面の向きの情報は記録されていません。

また、dviファイルに書かれている紙面サイズは、実際の値と異なる場合があり（たとえば、0となっていることもある）、dvioutではdviファイルに依存した紙面サイズの自動変更はサポートしていません。Property Sheet->[Paper]で紙面サイズや向きを指定するか、dviout specialsを用いてください。


メニューバーのFileあるいはFile->Historyに表示されるdviファイルを表示から消すには、File->Historyでそのファイルを選択して、[Hide]ボタンを押します。

さらに、そのdviファイルがメニューバーのFileに表示されていた場合は、そのdviファイルを扱わずにdvioutを終了すると、次回のdvioutでは表示に現れません。

なお、File->Quitでdvioutを抜け出すと、dvioutが扱ったdviファイルの記録を更新しません。

dvioutがフロッピーディスクなどから一時的に読んだdviファイルの記録を消したいときに用いるとよいでしょう。


プレビュー画面でSHIFTキーを押しながらマウスの左ボタンをクリックすると、カーソルのある位置の単語や文を取り出すことができます。

現れたエディットボックスで[Copy]を押すと、切り出された部分がWindowsのクリップボードにコピーされるので、辞書プログラムを用いて意味を調べたり、他のエディターにコピーすることができます。

また、URLのアドレスや実行プログラム名、あるいは画像ファイル名などであった場合は、[Execute]を押すことにより、Windowsに定義されている適切な処理を行います。たとえば

http://akagi.ms.u-tokyo.ac.jp/ftp-j.html/#TeX

であれば、WWW Browserを開いてそこにアクセスし

mailto:dviout-admin@akagi.ms.u-tokyo.ac.jp

であれば、そのアドレスにmailを出すためメールプログラムが開かれ、また

c:\temp\picture.jpg

であって対応する画像ファイルが存在すれば、その画像を表示することができます。


他のdviwareと互換性が無いと思われるので注意すべきdviout独自の機能として以下のものがあります。

specials
・画像データファイルのspecials やそのパラメータに関しては、今まで使われてきた種々のものを同時にサポートしています。その他

\special{bmpfile=file_name parameters}

と Susie plug-in による各種形式の画像ファイルの読み込み

・\special{file=file_name} によるファイルからのspecialsの読み込み

・tpic specialsの拡張

・dviout specials

・プレゼンテーション・モード および cover sheet, pause special

・source specials (compatible to MikTeX & yap)

そのほか
・DVIファイルへの埋め込み


dvioutはDVIファイルを取得してからそれをプレビューするまでの内部動作の概略（デフォルトの設定の場合）は以下の通りです。

0. DVIファイルを読んで、各ページに対し、DVIファイルにおける開始位置を調べてそのテーブルを作る。
また、そのDVIファイルで使われている各TeXのフォントに対し、-TEXPK: などに基づいて、実際の文字画像をどのように得るか（Systemに登録されたTrueType、DISK上のPKフォントなど）のリストを作る。

1. 指定されたページのDVIファイルの中身を解釈し、1ページ全体の画像を（白黒）２値の画像データに展開する。
このとき、color specialによる色づけ文字や、取り込みカラー（含 gray scale）画像などは、別個にそれぞれ画像データあるいはそれを得るためのポインタの形でメモリー上に保存しておく。

2. １ページ全体の２値の画像ファイルを縮小し、背景色などを考慮して256色（場合によっては16色）の画像データを作成する。文字は背景との間で16段階のgray scale（anti-aliasing）を用いて変換される。
8色の文字に対する16段階のanti-aliasingと8色の背景色に対する16段階のanti-aliasing（これらは、HyperTeXのホットスポットや文字列検索で見つかった文字の表示で用いられる）のための文字色のパレットを用意し、256色BMP画像データとなる。
256色なので 1 pixelは 1 byteになるが、下位 4 bitが gray scaleのデータ、その上 3 bitが 8色、最上位bitで色づけは背景か文字かを示す（例えば、色づけ下線は背景に対する色づけを線の部分に関して行っている）。

3. 作成されたBMP画像データおよびメモリー上のカラー文字や画像データを合成してWindows APIによって画面に表示する。この際、HyperTeXのホットスポットなどの色づけのためのBMP画像データの変更も行われる。

Remark: \special の解釈は、1 の段階で行われる。特に dviout specials が存在した場合は、それを解釈した後、再度 1 を実行し（このときは dviout specials を無視する）、2, 3 と進む。より詳しくは以下の通り、

dviout specials はそのページでの出現順に解釈される。

・2文字で表せるキー入力で、小文字が混ざっているものがあれば、「そのキー入力操作を行う」というコマンドを、「行うべきコマンドリスト」の最後に付け加えるのみで、実行は後回しにする。

・`timer があると、それ以降の dviout specials は指定した時間経過後に解釈するように設定し、以降の dviout specials を解釈せずに終わる。

・`wait または ; があると、「それ以降の dviout specials を解釈せよ」というコマンドを「行うべきコマンドリスト」の最後に付け加えて終わる。

・3 まで実行した後、「行うべきコマンドリスト」を先頭から順に、上記と同様に解釈する。`timer によって指定した時間が経過した時も同様。

この場合は dviout specialsでのキー入力操作で、（画面書き換え自身でなくて）画面書き換えを伴うものがあれば、そのキー入力の実行時に「画面書き換えを行え」というコマンドが「行うべきコマンドリスト」の最後に付加される。


用語集

dviout
  目次
    仕様
    配布
    dviout User's 倶楽部
    知られている不都合箇所
    Make Help
    付属のプログラム
    補記
    アンインストール
    プレビュー
    パラメータのリスト
    パラメータの設定例
    プロパティーシート
    HyperTeX
    文字列サーチ
    文字列コピー
    プレゼンテーション・モード
      cover sheet
      pause special
      プレゼンテーションでのキー
    DVIファイルへの埋め込み
      拡張DVIファイル
      tar形式
      dviout specials
      source specials
      Font/Image Embedding
    移動
      他のファイル
      ページ番号
    起動と終了
      no more dviout
    他のプログラムとの連携
      DDE使用例
    インストール
      解像度の設定
      フォントのパスの設定
        -TEXPK の設定例
      表示スケールの調整
      印字位置の調整
      dviファイルのdvioutへの関連付け
      パラメータの自動インストール機能
    印刷
      ページのSelection
      ページ指定オプション
        ページ指定マクロ
      縮小／拡大印刷機能
      ページ毎のポーズ機能
      袋綴じ印刷
        印刷オプションの使用例
      印刷のページの順番
      印刷データ出力中でのキャンセル
      ジョブの統一／分割
      dviprtによる印刷
        -dviprt の設定例
        CFGファイル
        LBP用ドライバ
        プリンタの制御コードの取り込み
  ユーザインタフェース
     メニューバー
      File Menu
        Automatic Save
      Jump Menu
      Search Menu
      Display Menu
      View Menu
      Presentation Menu
      Paper Menu
      Option Menu
        Choose Parameters
        Check color specials
        Change Japanese fonts
      Help Menu
    情報表示
      ファイルと表示に関する情報
      フォント情報
      バッファ情報
      システム情報
      キー機能一覧
      パラメータ一覧
      パラメータの設定値の出力
      表示文字情報
  Property Sheets
    [CONTENTS]
      [Save]
      [Restore]
      [OK]
      [Cancel]
      [Apply]
      [Help]
      [Default]
      current mode
    [Display]
      ガンマ補正
      gray scale
      HVscale
      reverse Display
    [Resolution]
      dpi
    [Font]
      [Guess]
        [Guess]の仕様
      存在しないフォントへの対処
      フォントグリフファイル
      フォントメトリックファイル
      tfmファイル
      jfmファイル
      FLIフォントライブラリ
      欧文TrueTypeフォント
      inch
      GTHフォントライブラリ
      FARフォントライブラリ
      フォントのチェック
        cmr10
        line10
        msam10
        lcircle10
        eufm10
        min10
        tmin10
      -F の指定
    [Font2]
      フォントの自動生成
        フォント作成のテンプレート
    [WinJFont]
      [WinJFont]のTrueTypeフォント
      [WinJFont]のH scale
      [WinJFont]のV scale
      [WinJFont]の[Define]
      [WinJFont]の[Remove]
      [Change Font]
      [Add Font]
      [WinJFont]のjfm/tfm
      [WinJFont]の平体
      [WinJFont]の斜体
      [WinJFont]の向き
      [WinJFont]のH position
      [WinJFont]のV position
    [JFont2]
      -ntt の指定
    [Key]
      [Key]のDefine
      [Key]のClear
      [Key]のSearch
      [Key]のAll Clear
      [Key]のFunction
      [Key]のKey
      キーシンボル
    [Search]
    [HyperTeX]
      HyperTeX specials
    [Common]
    [Graphic]
      BMPファイル
      BMC
      tpic specials
        tpic specialsのコマンド
        tpic specialsの拡張
      画像データファイル
        画像データファイルのspecials
        PostScript specialのパラメータ
        PostScript specialの使用例
        Ghostscript
      カレントディレクトリ
    [Printer]
    [Paper]
    [System]
    [REGISTRY]
      Registry
      Selected mode
        Current Name:
        Current mode:
        Default mode:
        Current Print:
      [Auto Load]
      [Ignore]
      [REGISTRY]での[Save]
      [REGISTRY]での[Restore]
      [REGISTRY]での[All Set]
      [REGISTRY]での[All Clear]
      [REGISTRY]のリストボックス
  Q&A
  パラメータ
    -A:
    -area:
    -base:
    -bb:
    -bf:
    -BM:
    -BMP:
    -box:
    -br:
    -bright:
    -Browser:
    -button:
    -c:
    -cmode:
    -color:
    -dpi:
    -dpiv:
    -dviprt:
    -e:
    -edge:
    -F:
    -FB:
    -file:
    -Fkeep:
    -Fod:
    -ftt:
    -G:
    -g:
    -gbox:
    -gclip:
    -gdat:
    -gen:
    -gfit:
    -GIF:
    -gow:
    -GS:
    -gsize:
    -gsrc:
    -gsx:
    -hbuf:
    -HC:
    -hname:
    -href:
    -HS:
    -hyper:
    -hyperoff:
    -isp:
    -J:
    -Jbt:
    -JC:
    -Jgt:
    -Jfm:
    -L:
    -LM:
    -log:
    -macro:
    -mag:
    -mode:
    -multi:
    -ntt:
    -nttF:
    -OX:
    -OY:
    -renew:
    -RM:
    -S:
    -scale:
    -sdpi:
    -search:
    -Set:
    -sFont:
    -spi:
    -src:
    -t:
    -TEXFLI:
    -TEXFONTS:
    -TEXKNJ:
    -TEXPK:
    -TEXPKD:
    -TEXROOT:
    -TEXSUBF:
    -texhelp:
    -TM:
    -ToEdit:
    -tpic:
    -ttf:
    -varf:
    -VC:
    -virtual:
    -VS:
    -vfn:
    -Wshow:
    -y: