# $Id: README.win-3x-jp,v 1.6 2018-03-14 10:29:14+09 shige Exp $

README.win-3x-jp: jp3.X パッチの MS-Windows 用の説明書 (for l2h-2017.2)
Shigeharu TAKENO <shige@iee.niit.ac.jp>

■MS-Windows 用の説明書 (jp3.X パッチ)

jp3.X の日本語化パッチを当てた LaTeX2HTML の、MS-Windows へのインストー
ル手順などを説明します。

1. はじめに
-----------

日本語化された LaTeX2HTML の MS-Windows へのインストールに関しては、以
前は阿部＠北教大さんの Web ページ

「Windows に LaTeX2HTML をインストールしよう」
 http://www.phys.asa.hokkyodai.ac.jp/osamu/latex2html/index.html

が良く知られていましたが、最近はその Web ページは閉鎖されたのかつながら
ないようです。

LaTeX2HTML の元々の付属文書には MS-Windows へのインストールの手順もつい
ていますので、それを参考に日本語版 (jp3.X) の LaTeX2HTML の MS-Windows
へのインストール手順や注意などをここに書いておきます。

TeX の環境は、現在日本語の LaTeX が使える典型的な以下の 2 つの環境を仮
定します。

(a) W32TeX + TeX インストーラ 3
  (例えば TeX Wiki: https://texwiki.texjp.org/?W32TeX 参照)
(b) TeX Live 2016
  (例えば TeX Wiki: https://texwiki.texjp.org/?TeX%20Live 参照)

日本語化パッチは、jp3.X 系の LaTeX2HTML 日本語化パッチを使用します。現
在の jp3.X 系の日本語化パッチでは、perl の Encode モジュールを使用し、
UTF-8 の LaTeX ファイルから UTF-8 の HTML ファイルを生成するか、または
Shift_JIS の LaTeX ファイルから Shift_JIS の HTML ファイルを生成します。
そのため、従来の初期設定ファイルを使用すると文字化けが起こる可能性があ
りますが、詳しくは「2.5. 初期設定ファイルの作成」をご覧ください。

現在の jp3.X 版の日本語化パッチでは、UTF-8 版か、Shift_JIS 版かを選択し
てインストールし、実行時にそれらをオプション等で変更することはできませ
ん。ただし、両者を別々のディレクトリにインストールして、ラッパーバッチ
ファイルでそれらを切り替えて使用することは可能です。

日本語化パッチの置き場所、または latex2html に関する情報は以下をご覧く
ださい。

 http://takeno.iee.niit.ac.jp/~shige/TeX/latex2html/ltx2html.html
 http://takeno.iee.niit.ac.jp/~shige/TeX/latex2html/l2h-win.html

なお、latex2html-2008 から、latex2html 本体のライセンスが、独自ライセン
スから GPL に変わりました。この日本語化パッチもそれに従います。ライセン
スについては、配布物に含まれる LICENSE ファイルを参照してください。

日本語化パッチを当てることで利用できるにようなる機能や、追加されるオプ
ションなどについては、付属文書の README.tech.jp をご覧ください。


2. インストール
---------------
2.1. LaTeX2HTML で必要なソフトの準備
------------------------------------

LaTeX2HTML で必要なソフトの準備について説明します。基本的に必要なのは、
以下のソフトです。

・perl
・TeX (pLaTeX)
・dvips (日本語が適切に処理できるもの)
・Ghostscript (日本語が適切に処理できるもの)
・netpbm

以下で、(a) W32TeX と (b) TeX Live のそれぞれで必要なものなどについて説
明します。


2.1.1. W32TeX + TeX インストーラ 3 の場合
-----------------------------------------

W32TeX には TeX、dvips, Ghostscript (gs) は当然含まれていますので、それ
を使います。デフォルトでは TeX のバイナリは C:\w32tex\bin、gs は
c:\gs\gs9.21\bin (9.21 の場合) などに置かれています。

なお、gs は 7.07 などの古いものを使う場合、CMap ファイルを手動でインス
トールしないと、日本語の含まれる EPS ファイルの処理に問題が出る場合があ
ります。詳しくは、例えば以下を参照してください。

・TeX Wiki Ghostscript 7.07
  https://texwiki.texjp.org/?Ghostscript%207.07

Perl と netpbm は別途インストールする必要があります。Perl は  Active
Perl をインストールすればいいでしょう。

・Active Perl
  http://www.activestate.com/activeperl/downloads

デフォルトでは C:\Perl\bin などにインストールされます。

gs, Perl のパスは、それぞれインストーラが自動的に設定してくれますので、
インストール後に再起動すれば、path を手動で設定する必要はありません。

netpbm のインストールについては、「2.2 netpbm の準備」で説明します。

2.1.2. TeX Live 2016 の場合
---------------------------

TeX Live には TeX、dvips は当然含まれていますので、それを使います。デフ
ォルトでは TeX のバイナリは C:\texlive\2016\bin\win32 に置かれています。

Perl と Ghostscript (gs) は、TeX Live には既に含まれていますので、それ
を利用することができます。Perl の実行バイナリは

  C:\texlive\2016\tlpkg\tlperl\bin 

に、gs は

  C:\texlive\2016\tlpkg\tlgs\bin

にあるようです。ただし、これらには path が通っていませんので、
LaTeX2HTML でこれらを使うにはその path を設定する必要がありますが、gs
の方は TeX のバイナリと同じ場所にある rungs.exe という gs のフロントエ
ンドを使えば gs の path 等を設定する必要がありませんので、今回はその設
定を紹介します。詳細は、「2.4.2. TeX Live 2016 の場合」で説明します。

また、TeX Live に含まれている gs は、通常の gs に含まれているファイルが
削ってあり、そのため元々の LaTeX2HTML でその gs を使おうとすると gs の
check 時に gs_init.ps がないと言われ失敗しますが、日本語化パッチでは対
処してあります。

もちろん、TeX Live に含まれる perl, gs とは別に Active Perl や gs を自
前でインストールして、LaTeX2HTML でそれを使うことも可能です。その場合の
設定等の作業は W32TeX の場合とほぼ同じになりますので、そちらを参照して
ください。


2.2. netpbm の準備
------------------

W32TeX の場合も、TeX Live の場合も、いずれも netpbm は含まれていません
ので、自分でインストールする必要があります。MS-Windows では、とりあえず
以下のものを使用します。

 netpbm-10.18.4
 https://sourceforge.net/projects/gnuwin32/files/netpbm/10.18.4/

(1) netpbm-10.18.4.exe を上記サイトからダウンロード
(2) それを実行

とすれば、C:\Program Files (x86)\GnuWin32\bin に実行バイナリがインスト
ールされます。

(3) エクスプローラで「C:\Program Files (x86)\GnuWin32\bin」を開いて、
  bmptoppm, pnmfile, ppmtojpeg というファイルの名前を、それぞれ .exe の
  拡張子のついた bmptoppm.exe, pnmfile.exe, ppmtojpeg.exe に変更する

これは、拡張子を表示する設定になっていないと作業しづらいかもしれません
し、また管理者権限が必要になるかもしれません。

なお、この (3) は、それらがなぜかそうなっていないために必要な作業で、ほ
かにもいくつか .exe がついていないものがあるのですが、.exe をつけるべき
Win32 のバイナリと、.exe をつけてはいけない perl スクリプトなどが含まれ
ていますので、とりあえず LaTeX2HTML に必要な上の 3 つのファイルだけその
作業をしておきます。

(4) コマンドプロンプトを立ち上げて、「dir /x C:\」とすることで、
  「C:\Program Files (x86)」の簡略名を取得

「C:\Program Files (x86)」のような空白の含まれるパスは LaTeX2HTML のよ
うな Unix 由来のツールは苦手なので、「dir /x」で表示される別名パス指定
を利用します。詳しい説明は、「dir /x」や「8.3形式」などで検索すると情報
が見つかると思います。例えばうちの場合はその別名は「C:\PROGRA~2」でした
ので、netpbm のバイナリのディレクトリは「C:\PROGRA~2\GnuWin32\bin」のよ
うに空白の含まれないパスで指定できることになります。

以上で、必要な外部プログラムはすべて揃ったことになります。

なお、

 https://sourceforge.net/projects/gnuwin32/files/netpbm/

には、10.27 という少し上記のものより新しい netpbm が置かれているのです
が、これは LaTeX2HTML で使うには少し問題がありますので、使用しないでく
ださい。詳しくは、

 http://takeno.iee.niit.ac.jp/~shige/TeX/latex2html/l2h-win.html

の「注意等」の 04/09 2017 の記事をご覧ください。


2.3. LaTeX2HTML 配付ファイルの入手
----------------------------------

l2h-2017-jpYYYYMMDD-win-3x.zip: 
  latex2html-2017.2 本体に jp3.X の日本語化パッチを当てたもの一式

を入手します。これは以下にあります。

  http://takeno.iee.niit.ac.jp/~shige/TeX/latex2html/l2h-win.html

それをダウンロードして展開してください。

その後は「コマンドプロンプト」での作業になりますので、コマンドプロンプ
トを起動し、展開したディレクトリ内に移動してください。


2.4. LaTeX2HTML のインストール作業
----------------------------------

インストール作業は、展開したディレクトリの中で、基本的には以下の作業を
行います。

(0) convert.bat を編集、実行
(1) prefs.pm を編集
(2) config.bat を編集
(3) config.bat を実行
(4) test.bat を実行
(5) install.bat を実行
(6) ラッパーバッチの編集とインストール

編集する必要があるファイルは、いずれもテキストファイルなので、編集作業
は、メモ帳 (notepad) で行っても、TeXWorks のエディタで行っても構いませ
ん。ただし、日本語が入っているものもありますので、日本語が正しく表示さ
れるものを使うのがいいでしょう。

まず、(0) はいくつかのファイルの文字コードを変換し、Encode モジュールの
設定などを書き込む作業で、UTF-8 版を入れるか、Shift_JIS 版を入れるかに
よって作業が変わります。UTF-8 版を入れる場合は、convert.bat をコマンド
プロンプトで

 convert.bat utf8

と実行し、Shift_JIS 版を入れる場合は

 convert.bat sjis

と実行します。なお、convert.bat は perl を使用しますが、TeX Live の場合
は perl のパスが通っていませんので、実行前に convert.bat の

 set PERL=perl

の行を、

 set PERL=C:\texlive\2016\tlpkg\tlperl\bin\perl

のように perl の実行ファイル名を指すように変更する必要があります。

なお、convert.bat はオリジナルのファイルを残しつつ変換作業を行いますの
で、複数回実行しても問題はありませんし、UTF-8 用の作業を行った後で
Shift_JIS 用の作業を行っても問題はありません。よって、例えば UTF-8 版を
インストールした後で、また (0) ~ (6) の作業を Shift_JIS 用に行うことで、
同じディレクトリから 2 種類のインストールを行うこともできます。

次の (1), (2) の作業について、2 つの環境別に説明をします。


2.4.1. W32TeX + TeX インストーラ 3 の場合
-----------------------------------------

(1) prefs.pm を編集

まず編集する必要がある項目は EXTRAPATH で、$prefs{'EXTRAPATH'} (126 行
目付近) に netpbm のパスと gs のパスを追加します。例えば

 $prefs{'EXTRAPATH'} = 'C:\PROGRA~2\GnuWin32\bin;C:\gs\gs9.21\bin';

のようにします。'' で囲むことに注意してください。

次はインストール先 PREFIX で、$prefs{'PREFIX'} の行 (132 行目付近) を修
正します。コメントにあるように、MS-Windows では

 $prefs{'PREFIX'} = 'C:\progs\latex2html';

とでもすればいいですが、Shift_JIS 版と UTF-8 版の両方をインストールする
場合は、例えば

 $prefs{'PREFIX'} = 'C:\progs\l2h-utf8';
 $prefs{'PREFIX'} = 'C:\progs\l2h-sjis';

のように、それぞれのインストール作業で異なるディレクトリにインストール
するように設定を切り替えてください。

(2) の config.bat の編集は W32TeX では必要ありませんので、ここまで済ん
だら「2.4.3. config, test, install」に進んでください。


2.4.2. TeX Live 2016 の場合
---------------------------

(1) prefs.pm の編集

まず編集する必要がある項目は EXTRAPATH で、$prefs{'EXTRAPATH'} (126 行
目付近) に netpbm のパスを追加します。

 $prefs{'EXTRAPATH'} = 'C:\PROGRA~2\GnuWin32\bin';

次はインストール先 PREFIX で、$prefs{'PREFIX'} の行 (132 行目付近) を修
正します。コメントにあるように、MS-Windows では

 $prefs{'PREFIX'} = 'C:\progs\latex2html';

とでもすればいいですが、Shift_JIS 版と UTF-8 版の両方をインストールする
場合は、例えば

 $prefs{'PREFIX'} = 'C:\progs\l2h-utf8';
 $prefs{'PREFIX'} = 'C:\progs\l2h-sjis';

のように、それぞれのインストール作業で異なるディレクトリにインストール
するように設定を切り替えてください。

最後は GS の設定で、 $prefs{'GS'} (263 行目付近) を、

 $prefs{'GS'} = 'gswin32c';

から

 $prefs{'GS'} = 'rungs';

に変更します。

(2) config.bat の編集

TeX Live では perl の path が通っていませんので、config.bat を実行する
ために perl の path を設定しておきます。config.bat の 3 行目付近に、

 path=%path%;c:\texlive\2016\tlpkg\tlperl\bin

という行を入れてください。これで準備は終了です。


2.4.3. config, test, install
----------------------------

(3), (4), (5) の作業は、W32TeX, TeX Live の両者で共通です。

(3) config.bat を実行

コマンドプロンプトで 

 config.bat

で config.bat を実行します。必要な外部プログラムの検索などが行われ、そ
の認証結果が出力されます。うまくいかない場合、特に ghostscript のバージ
ョンの検出や、pnmcrop の検出に失敗している場合は、上の設定が間違えてい
る可能性があります。見直してみてください。

(4) test.bat を実行

次はコマンドプロンプトで 

 test.bat

として test.bat を実行します。これは、特に前半はよくわからないメッセー
ジを出力すると思いますが、オリジナルの LaTeX2HTML に含まれるテスト用の
LaTeX ファイル (英語) でlatex2html.bat などの動作テストを行います。

それがうまくいけば、現在いるディレクトリの下に tests\l2htest というディ
レクトリが作られていて、その中の index.html というファイルをブラウザで
見てみれば latex2html の変換がうまくいっているか確認できます。

なお、数式を画像化して表示するページで、画像の背景が灰色になっている場
合がありますが、これは後で解消するので、この時点では無視してもらって結
構です。

(5) install.bat を実行

最後に

 install.bat

とすれば、上で設定した PREFIX の場所に latex2html 一式をインストールし、
スタイルファイルを LaTeX のインストール先にインストールします。ただし、
最後に mktexlsr を実行しますので、それにちょっと時間がかかります。


2.4.4. ラッパーバッチの編集とインストール
-----------------------------------------

最後に (6) のラッパーバッチファイルの編集とそのインストールをします。

ラッパーバッチファイルは、(5) のインストール先にパスを通して、直接
latex2html.bat を使うようにすれば特になくてもよいのですが、ラッパーバッ
チを使えば、初期設定ファイルの名前、置き場所を変更したり、環境変数
TRANSPARENT_COLOR の設定などに利用できます。

ラッパーバッチファイルは、l2h.bat として既にひな形がそこに置かれていま
すので、その必要な箇所を編集してください。コメントに書かれているように
設定する必要があるのは、とりあえずは

 set l2hdir=

の後ろの latex2html のパス ((1) で PREFIX に設定したもので '' では囲ま
ない) と

 set L2HINIT_NAME=

の後の初期設定ファイル名の名前です。それぞれ

 set l2hdir=c:\progs\latex2html
 set L2HINIT_NAME=l2h-init-jp

くらいでいいでしょう (もちろん変更も可能)。

さらに、環境変数 HOME をこのバッチファイルの中で一時的に変更することで
初期設定ファイルの置き場所を変更することもできます。

編集が済んだら、l2h.bat をパスの通っている場所、あるいは LaTeX ファイル
の置き場所などにコピーしてください。

これで LaTeX2HMTL のインストールは終了です。


2.5. 初期設定ファイルの作成
---------------------------

LaTeX2HTML のインストール後に、自分用の初期設定ファイルを用意します。こ
れがないと、正常に日本語化されません。また、jp3.X では、従来の初期設定
ファイルと一部違っているところがあり、従来の初期化ファイルのままでは文
字化けする必要がありますので、注意が必要です。

初期設定ファイルは、l2h-init-jp というひな形が既に用意されています。現
在は、

・このファイルの文字コードの設定 (use utf8, or use encoding)
・$LOCAL_ICONS
・「&do_require_package("japanese");」による日本語化
・「$IMAGE_TYPE = "gif";」による GIF 形式への変換
・$HTML_VERSION

くらいしか設定していません。なお、これは perl スクリプトなので、# で始
まる行はコメント行です。

$IMAGE_TYPE の設定は、実は「2.2. netpbm の準備」でインストールした
netpbm では、PNG 画像への変換プログラムの pnmtopng にバグがあり、作られ
る PNG 画像の背景が透明化されず灰色になってしまうことがあるため、上のよ
うに GIF 画像に変換するよう設定しています。PNG 画像に変換したい場合は、
その行をコメントアウトしてください。

UTF-8 版、Shift_JIS 版のそれぞれのインストールに合わせて、この初期設定
ファイルのひな形 l2h-init-jp の日本語コードもそれに合わせてあり、UTF-8
の場合は先頭に

 use utf8;

という行、Shift_JIS の場合は

 use encoding "shiftjis";

という行が入ります。これはそのファイルのコードを表すだけで、UTF-8 版の
LaTeX2HTML でも Shift_JIS の初期設定ファイルが使えますし、その逆も可能
で、つまりどちらの版のインストールでも共通の初期設定ファイルが利用でき、
初期設定ファイルの日本語コードは都合のいい方を選んでください。ただし、
初期設定ファイルの日本語コードと上の use 行は対応している必要があります。

ひな形を使わずに、以前に使っていた初期設定ファイルを使う場合も、jp3.X 
の LaTeX2HTML ではそのファイルの日本語コードに合わせて先頭にいずれかの
use 行を入れてください。そうしないと文字化けした HTML ファイルが作られ
る可能性があります。

必要なものを編集したら、l2h-init-jp のファイルを環境変数 HOME の場所に
コピーしてください。

これで準備は終了です。

latex2html の実行は、「2.4.4. ラッパーバッチの編集とインストール」のラ
ッパーバッチを使い、コマンドプロンプトで

 l2h file.tex

のようにして実行します。latex2html が受け付けるオプションを

 l2h -image_type png file.tex

のように指定することもできます。

テスト用の日本語 LaTeX ファイル ((4) のテストファイルを日本語化して画像
ファイルを追加したもの) の Shift_JIS 版と UTF-8 版の 2 種類を

  http://takeno.iee.niit.ac.jp/~shige/TeX/latex2html/l2h-win.html

に置きますので、それをダウンロードして展開してテストしてみるといいでし
ょう。詳しくは上記サイトをご覧ください。


3. その他
---------

本パッチは無保証です。しかし色々な不具合は、対応できるものは行う予定で
すので、不具合の報告、意見などは歓迎します。報告等は下記メールアドレス
へお願い致します。また、バグリポート等、各種情報は、順次下記 WWW page 
に掲載する予定です。

e-mail: shige@iee.niit.ac.jp
WWW page: 
 http://takeno.iee.niit.ac.jp/~shige/TeX/latex2html/ltx2html.html
 http://takeno.iee.niit.ac.jp/~shige/TeX/latex2html/l2h-win.html


配付ライセンスは、武藤＠Debian プロジェクト さんによる 99.1 用のパッチ
同様、オリジナルの LaTeX2HTML のライセンスに従うものとしたいと思います。

そして、latex2html-2008 より、latex2html 本体のライセンスが GPL となり
ましたので、この日本語化パッチも それに従います。詳しくは配布物に含まれ
る LICENSE ファイルを参照してください。


4. 目次
-------
1. はじめに
2. インストール
2.1. LaTeX2HTML で必要なソフトの準備
2.1.1. W32TeX + TeX インストーラ 3 の場合
2.1.2. TeX Live 2016 の場合
2.2. netpbm の準備
2.3. LaTeX2HTML 配付ファイルの入手
2.4. LaTeX2HTML のインストール作業
2.4.1. W32TeX + TeX インストーラ 3 の場合
2.4.2. TeX Live 2016 の場合
2.4.3. config, test, install
2.4.4. ラッパーバッチの編集とインストール
2.5. 初期設定ファイルの作成
3. その他
4. 目次

+=================================================+
 竹野茂治   〒945-1195 新潟工科大学 情報電子工学科 
 shige@iee.niit.ac.jp      TEL(&FAX): 0257-22-8161 
+=================================================+
