[ www.notava.org > ソフトウェア > html2winhelp ]
ロイヤリティ・フリーです。
修正点:
href=... が、入力のトップディレクトリよりも上のディレクトリを参照しようとしている場合に、出力に含めないようにした。このチェックは完全ではありません。
html2winhelp は、javadoc によって出力された html を Windows の HTML Help のソースへ変換します。出力されるソースは、Microsoft の HTML Help Workshop を使用することで、*.chm 形式のヘルプへ変換できます。これによって、
が可能になります。
次の両方が必要です。
加えて、出力されたファイルをコンパイルするのに、HTML Help Workshop が必要です(バージョン 4.74.8702 で動作確認)。
操作はすべてコマンドプロンプト上で行います。
適当なディレクトリを作り、そこに変換したい HTML ファイル群を置きます。また、出力されるファイルを置くための別の新しいディレクトリを作ります。
例:
> mkdir input
> cd input
> jar xvf ...\jdk-1_5_0-doc-ja.zip
docs/ が作成されました。
docs/ja/ が作成されました。
:
> cd ..
> mkdir output
html2winhelp を用いて HTML Help のソースファイルを作成します。この時、変換したい HTML の元になった Java のプログラムの *.class ファイルへ CLASSPATH が設定されている方が、良い出力が得られます。
> html2winhelp jdk50ja "JDK 5.0" input\docs\ja output "UTF8,ISO2022JP,EUC_JP,MS932"
indexing input\docs\ja\api\index-files\index-1.html
:
:
jdk50ja は出力されるファイルの名前、"JDK 5.0" はヘルプのタイトル、input\docs\ja と output は入出力対象のディレクトリです。"UTF8,ISO2022JP,EUC_JP,MS932" は入力するHTMLファイルのエンコーディングで、この順で読み込みを試みて最初に成功したものを採用します。いずれでもエラーになる場合、無理やりASCII形式に変換して読み込みます。
最後に、hhc を用いて出力されたファイルをコンパイルします(CPUにもよりますが、Java API であれば数時間かかります)。
> "C:\Program Files\HTML Help Workshop\hhc" output\winhelp.hhp Microsoft HTML Help Compiler 4.74.8702 Compiling ...\output\jdk50ja.chm : :
*.chm ファイルが得られます。
> start output\jdk50ja.chm
目次は出力されますが、かなり適当です。
次のキーワードが登録されます。以下、クラスについて説明しますが、インターフェイスについても同様です。
例:
LinkedList
()
(Collection)
List - java.awt.List
()
(int)
(int, boolean)
List - java.util.List
クラスに対して、その単純名が登録されます。ただし、同じ単純名のクラスが複数ある場合、完全限定名も併記されます。また、そのクラスがコンストラクタを持つ場合、それぞれの引数リストがサブキーワードとして登録されます。
例:
MAX_VALUE - Byte
MAX_VALUE - Character
MAX_VALUE - Double
MAX_VALUE - Float
:
フィールドに対して、その単純名とクラス名が登録されます。同じ単純名のクラスが複数ある場合、そのクラスは完全限定名で記述されます。
例:
subSequence(int, int) - CharSequence
- String
- StringBuffer
- CharBuffer
メソッドに対して、そのメソッド名、引数リスト、クラス名が登録されます。他のメソッドをオーバーライド場合、オーバーライドされているメソッドのサブキーワードとしてクラス名が登録されます(ただし、クラスに対して CLASSPATH が設定されている必要があります)。
GPL 2.0 に従います。html2winhelp が出力するファイルは、入力されたファイルの著作権がそのまま適用されます。