LaTeXでホームページ --- LaTeX2HTMLを用いる方法

「 LaTeX 文書を電子文書として公開する方法と若干内容が重複しています。

はじめに

これまであなたは、LaTeXでレポートや解説書など、何か文書を書いてきたかもしれません。そこで、それらの文書をWeb上で公開し、世界中の方々に見てもらうという手があります。そんなふうにして公開した文書をホームページといいます。(正確にはWebページといいます。)

ホームページもパソコンのデータである以上、ファイルの形で公開されています。さて、ホームページで主に使われている文書のファイル形式には主に

  1. HTML (Hyper Text Markup Language)
  2. PDF (Portable Document Format)

の2種類があります。

LaTeXから作りやすく、見た目が印刷物のようにとても綺麗なのはPDFのほうなのですが、残念ながら表示までに時間がかかり、見る人は少々ストレスを感じるかもしれません。そこで、通常Webブラウザですばやく表示できるHTMLがよく用いられています。

ここでは、そのようなHTMLファイルを「LaTeX2HTML」を用いてLaTeX文書から作る方法を見ていきたいと思います。(ちなみに、作者のホームページにも簡単なインストール方法が記述してあります。また、出力例(Linux上のLaTeX2HTMLで生成)も見ていただければ参考になると思います。)

ちなみにこのソフトの動作環境はWindows 2000およびWindows XPのみのようです。Windows 95, 98, Meで動くかどうかは分かりませんが、ここではWindows 2000およびXP用の解説を書きます。

ちなみに、HTMLファイルを作るだけでは自分のパソコンからしか見られませんので、ホームページを作ったことになりません。 「 LaTeX 文書を電子文書として公開する方法」の「はじめに --- TeX 文書をみんなに見てもらうためには」でも述べましたように、そうして作ったファイル(電子文書)を最終的に「FTPソフト」を用いて、世界中からアクセスできる文書・データ置き場である「Webサーバー」にアップロードして、はじめてホームページになるのです。この点についても少し最後に見ていくことにします。

LaTeX2HTMLを使う前の準備

LaTeX2HTMLは、内部で別のソフトを使っています。ですので、それらのソフトをインストールしてあげないと動きません。

Perl(Active Perl)のダウンロード・インストール

まず、LaTeX2HTMLを動かす際に必要となるPerlというソフトをインストールします。(これは簡単な文法でプログラムを動かすことの出来る実行環境です。LaTeXとは関係ありませんが、プログラミングに興味のある方はPerlに手を出してみるのがいいかもしれません。)Perlの実行環境の一つにActive Perlが知られており、Windows上ではこれがよく使われています。

Active Perlをインストールしていない方は、Active Perlのインストールを参考に、インストールしてください。

NetPBM(Windows移植版)その他のダウンロード・インストール

次に、画像処理ソフトであるNetPBMというソフトをインストールします。次のリンクからダウンロードしてください。

http://a-pc-osamu3.asa.hokkyodai.ac.jp/osamu/archives/l2h-netpbm.exe

ダウンロードした「l2h-netpbm(.exe)」をダブルクリックします。解凍先のフォルダを指示通り変更しないまま[OK]を押します。

NetPBMインストール先決定

これだけでインストールは終わりです。ここで再起動する必要があります。特に指示が出たりはしませんので、必ず忘れずに再起動してください。

LaTeX2HTMLのインストール

ようやくLaTeX2HTMLのインストールです。少々面倒ですが、がんばりましょう。

まず、ダウンロードしてきた「l2h(数字)patched.zip」を「+Lhaca」などの解凍ソフトで解凍します。(解凍方法が分からない方は「+Lhacaデラックス版」による解凍方法をご覧ください。)

解凍後できたフォルダの中のprefs.pmというファイルを編集しなければいけませんが、Windows付属のメモ帳では編集できません。そこで、改行コードを自動的に適切に読み込んでくれるようなフリーのエディタ、たとえばMKEditorというテキストエディタを次のリンク先からダウンロードしてきます。(ダウンロードは、リンク先をクリックして指示に従ってダウンロードする、という形でないとうまくいかないようです。)

MKEditor for Windows

mke(数字)j.lzhあるいはmke(数字)j.exe のいずれか好きなほうをダウンロードしてきます。ここで、皆さんは既に「+Lhaca」などを用いて「l2h(数字)patched.zip」というファイルを「解凍」する作業をしてきました。「mke(数字)j.lzh」をダウンロードし、ダブルクリックするなどして「解凍」を行ってください。「MKEditor(.exe)」というファイルがあるはずです。そして、先に述べた「prefs.pm」というファイルをその「MKEditor(.exe)」にドラッグ&ドロップしてください。

prefs.pmをMKEditorで開く

160行目(左に出ている数字が行数です)に

$prefs{'ICONPATH'} = '';

という文字列があることでしょう。このクオーテーションマークの間に「l2hicon」と修正します。すなわち

$prefs{'ICONPATH'} = 'l2hicon';

のように修正します。今入力したl2hiconは、これから作成するHTML文書で使う飾り(アイコン)のフォルダの名前に相当します。hogehogeとかfoobarとか他の名前が良いという方は、半角英数字で別の名前を付けましょう。(Webページ作成経験者へ。クオーテーションマーク内には相対パスおよび絶対パスいずれも指定できます。分からない方はここでは分からなくていいですが、この2種類のパスの意味について勉強しておくとよいと思います。)

アイコンのパス指定

さて、これが終わりましたらメニューバーより[ファイル]→[上書き保存]と選び、上書き保存してください。

次に、コマンドプロンプト(Windows 95, 98, Meでは「MS-DOSプロンプト」)を起動します。起動方法ですが、プログラム→アクセサリの中にあるコマンドプロンプトを自力で見つける方法があります。Windows 2000, XPの方でコマンドプロンプトが見つからない方はWindows左下より[スタート]→[ファイル名を指定して実行]より「名前:」に「cmd」とだけ入力し、[OK]を押します。これでコマンドプロンプトが起動します。

コマンドプロンプトの起動

次に、先ほど編集したprefs.pmのあるフォルダを開いておきます。そして、アドレスバーの中の小さなフォルダのアイコンをコマンドプロンプトの黒い画面の中にドラッグ&ドロップします。

カレントディレクトリ簡便取得法

すると、たとえば

"C:\Documents and Settings\Administrator\デスクトップ\latex2html-2002-2-1-w32-137patched"

のような文字列が新たに加わったと思います。これが、現在開いているフォルダの位置を記号を用いて示した文字列です。この先頭に「cd 」(半角英数字でcdおよび半角スペースで記述。フォルダの場所を移動する命令。)と入力し、そして

cd "C:\Documents and Settings\Administrator\デスクトップ\latex2html-2002-2-1-w32-137patched"

のような形にします。そしてEnterキーを押します。これで、コマンドプロンプト上でprefs.pmのある場所に「移動」できました。(普通マウスでダブルクリックしてフォルダの中を移動していますが、それと同じことをコマンドプロンプトの世界でやったのです。)

ここで、LaTeXをC:\usr\localすなわちCドライブのusrフォルダの中のlocalフォルダの中にインストールしたと仮定して説明します。(私のサイトの説明どおりにインストールした場合はそのようになっているはずです。)

次の2行の文字列を一行ずつ入力し、一行入力したらEnterを押すことを繰り返してください。(文字通り入力してください。PREFIXに何が代入されるのか・・・などと余計なことを考える必要はありません。)

config PREFIX+c:\usr\local\latex2html
install

これでインストールは出来ましたが、インストールが正常に行われたかどうかを確認する必要があります。先ほどと同様に、次の二行について、一行ずつ入力してEnterを押すことを繰り返してください。

del config.log
config PREFIX+c:\usr\local\latex2html

そして、config.logをダブルクリックして開いて見ましょう。

checking for iniptex... no
checking for html4-check... no
checking for ppmtojpeg... no
checking for anytopnm... no
checking for bmptoppm... no
checking if multiple pipes work... no

これで上の項目以外でnoが出ていなければ多分正常にインストールできています。お疲れ様でした。(出来ていない場合は、インストールがどこかで失敗しています。再度入念にチェックしながらインストールしなおしましょう。)

なお、EasyTeXを持っている方は次のような設定をしておくとよいでしょう。メニューバーの[オプション]→[ツールの設定]より設定します。「HTML作成」などは[タイトル]に記入する際の一例です。

「HTML作成」
「HTML閲覧」

「HTML作成」および「HTML閲覧」はWindows 2000, XPの場合の設定で、Windows 95, 98, Meの場合は「プログラム」を「command.com /c htmlmake」とすることでうまくいくと思います。(cmd.exeをcommand.comに変更しただけ。)また、「HTML作成」は、後述する簡易自作バッチファイルhtmlmake.batを用いることを前提とした設定です。

LaTeX2HTMLを使ってみよう!

ここではコマンドプロンプトでの説明のみ行います。(WinShellやEasyTeXでどのように行うかはまた後ほど書くかもしれません。)

まず、たとえば次のようなTeXソースファイルを記述します。このファイル名をたとえば「meneki.tex」とします。(ちなみにmeneki.texは内容が意味不明です。)自分で作ってもいいですが、このとき\documentclassではjsarticleなど標準でないものは指定せず、jarticleのように標準的なものを指定するようにします。数式が入っていても大丈夫です。

\documentclass{jarticle}
\title{\TeX てすと}
\author{適当 太郎}
\begin{document}

\section{はじめに}

\subsection{この文書の目的}

この文書では、免疫について自己と非自己の観点から見て行くものである。

\subsection{この文書の対象者}

免疫についての初学者でも構わない。

\section{他人に厳しい免疫}

\subsection{自己と非自己}

免疫とは、例外をおそれずにいえば、体内に入ってきた細菌やウィルス(非自己)といった自己にとって危険な要素を徹底的に排除しようと試みる際に、脳以上に主導権を握っている生体防御機構である。
\subsection{突然数式のテスト}
\[
\int _1 ^3 x^2 dx
\]

\end{document}

次に、コマンドプロンプトを開き、先ほどと同様にアドレスバーの小さなフォルダのアイコンをコマンドプロンプトの黒い部分にドラッグ&ドロップし、先頭にcdおよび半角スペースを入力してからEnterキーを押す作業をします。これでTeXソースファイルのあるフォルダに移動できました。

その上で次を入力し、Enterを押します。

c:\usr\local\latex2html\bin\latex2html meneki | ack32 -s 2>&1 | ack32 -s

入力が面倒な方は、htmlmake.batをダウンロードしてTeXソースファイルと同じところにおくか、パスの通ったところ(たとえばC:\usr\local\bin、すなわちCドライブのusrフォルダの中のlocalフォルダの中のbinフォルダの中)にコピーして次を実行します。

htmlmake meneki

これで、menekiというフォルダが作成され、その中にお目当てのHTML文書が出来ると思います。早速menekiフォルダを開き、index.htmlをダブルクリックして開いてください。

タイトルバー(Webブラウザ上部の青い部分)に\titleの中身が表示されていることが分かります。「突然数式のテスト」のリンクをクリックすると、数式も取り込まれています。(正確には、画像に変換して出力されています。HTMLそのものには数式を出力する機能はなく、画像として取り込むかMathMLなど別のマークアップ言語の助けを借りる必要があります。)

出来ていることは出来ているのですが、上に何かがあるはずなのに×マークなどがついて出ていないものがあります。これが先ほどprefs.pmで指定していたアイコンです。

早速prefs.pmと同じ場所にあるiconsフォルダをたった今作ったindex.htmlと同じ場所にコピーし、コピーしたiconsフォルダを選択して右クリックして[名前の変更]を押すか、F2キーを押すなりして、「l2hicon」にフォルダの名前を変更してください。

アイコンフォルダのコピー

アイコンフォルダのコピー

アイコンフォルダ名変更

アイコンフォルダ名変更

このように、アイコンを入れたフォルダとHTMLファイル本体は一心同体の関係にあります。他の場所やWebサーバーなどにHTMLファイルをコピーする際には、必ずアイコンを入れたフォルダも一緒にコピーするようにしてください。

なお、EasyTeXをお使いの場合、以上に述べたLaTeX2HTMLでの変換およびHTMLファイルの閲覧については、メニューバーより[ツール]→[HTML作成]でLaTeX2HTMLでのHTML変換を、[ツール]→[HTML閲覧]で作成したHTMLファイルの閲覧をすることが出来ます。(ただし、LaTeX2HTMLのインストールの項で述べたようなEasyTeXの設定、および前述したhtmlmake.batをLaTeXソースと同じ場所かパスの通った場所(C:\usr\local\binなど)にコピーする必要があります。)

HTMLファイルを公開しよう!

はじめに

ここまでで、LaTeXソースファイルからHTMLファイルを作成してきました。HTMLファイルだけを作っても、それでは世界中の人々に見てもらうことは出来ません。そこで、世界中の人々がアクセスできるような場所にHTMLファイルをコピーする必要があります。

Windows XPなどではLAN内の共有フォルダ内で一部の人に見せてもらうことが出来ますが、世界中の人に見せるためには「Webサーバー」という場所にHTMLファイルをコピーする(アップロードする)必要があります。

ファイルのアップロードの図解

まずはどこかでWebサーバーを使わせてもらい、それからWebサーバーにHTMLファイルをコピーしましょう。

Webサーバーを使わせてもらおう

まず、Webサーバーは、プロバイダが提供している場合があります。その場合はWebサーバーのアカウント(「サーバーを使っていいよ」という許可のこと)をプロバイダからもらうようにします。通常これは無料でもらえますし、広告もつかないので見た目にいいですが、ファイルサイズおよびファイルの数の制限が厳しい場合があります。

それが嫌な場合、ホームページに広告を載せる代わりに無料でWebサーバーのスペースを提供してくれるサービスを探すことになります。

FC2WEBは私も昔使っていました。(今は広告のない有料レンタルサーバ「山崎家」を使っています。)FC2WEBを使う際には分かりやすいマニュアルもありますので、参考にしてみてください。

ホームページの目次となるHTMLファイルを作ろう

Webサーバーが使えるようになったら、早速HTMLファイルをWebサーバーにコピーしましょう。(この作業を「アップロード」といいます。)

まず、ファイルをWebサーバーにコピーするためのソフトをダウンロード・インストールします。解説は「FFFTP Support Page」がわかりやすいですので、ご覧ください。

インストールできましたか?あとは、ホームページの目次となるindex.htmlを作成し、先ほど作ったHTMLファイルとindex.htmlをアップロードするだけです。

index.htmlはWordやホームページビルダー、Webサーバーを貸してくれるサイトの提供するソフトなどで作ってもいいのですが、たとえば次のように作ります。LaTeX同様、メモ帳や先ほどprefs.pmの編集で用いたMKEditorなど適当なテキストエディタで作成してください。構造はLaTeXと基本的には同じです。

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<HTML lang=jp>
<HEAD>

<META http-equiv=Content-Type content="text/html; charset=Shift_JIS">
<META http-equiv=Content-Language content=ja>
<TITLE>
タイトルバー(Webブラウザの青い部分)に表示させたい文字を入力
</TITLE>

</HEAD>

<BODY>
<H1>
\titleに書くような文字を入力
</H1>

<p>ここのサイトの簡単な説明を書く</p>

<ul>
<li> <a href="LaTeX2HTMLで作成したHTMLファイルのURLを入力">文書の内容を書く</a>
<li> <a href="meneki/index.html">TeXてすと</a>
</ul>

</body>
</html>

ここではHTMLの文法に深入りせず、簡単に説明します。

LaTeXの命令に相当する、不等号で囲まれたものをタグといいます。HTMLファイルはタグを用いて作ります。半角不等号の中に半角英数字を書いたものから効果が始まり、半角不等号の中に半角スラッシュ+半角英数字で終わるところで効果が切れます。つまり、「スラッシュなしのタグとスラッシュつきのタグのペア、そしてその2つで囲んだ本文」というケースが多いことを覚えておきましょう。

上のものをコピーし、メモ帳などで保存します。(ファイル名の最後に「.html」と付け、「ファイルの種類」を「すべてのファイル」などにして保存します。)あとは、「〜を入力」とか「〜を書く」といった指示通りに書いていきます。

本文を書くときは必ずbodyタグの中に書きます。あとは基本的に本文を、段落を作るpタグで囲ませながら書いていきます。

ulタグはLaTeXのitemize環境に相当し、liタグは\itemに相当します。したがって、HTML文書が増えたらどんどんliタグを増やしていけばいいのです。(ここでは1つ目のliタグの部分に説明を、2つ目のliタグの部分に例を記述しています。

各項目にはaタグで、LaTeX2HTMLで作成したHTMLファイルへのリンクを作っておくといいでしょう。aタグの中のダブルクオーテーションの中にアドレスを書き、aタグで囲まれた部分にHTMLファイルのタイトルなどを記述します。

アドレスはLaTeX2HTMLで作られたフォルダの名前(ほとんどはLaTeXソースファイル名と同じ)を書いた後にスラッシュで区切り、index.htmlと記述します。これでリンクをクリックするとHTMLファイルに飛ぶようになります。

他のタグについては分からなくても構いません。(ほとんどのものは、HTMLの構造上、正確を期すために書いているだけです。)きちんとHTMLを学びたい方はごく簡単なHTMLの説明をどうぞ。

WebサーバーへHTMLファイルをコピーしよう

ここまででindex.htmlも作りました。あとは、FFFTPなどのFTPソフトでindex.htmlとLaTeX2HTMLで作成したHTMLファイルをコピーするだけです。(ここではFFFTPを用いて説明します。)

LaTeX2HTMLで作成したファイルはmenekiフォルダの中にすべて入っています。

まず、FFFTPを起動し、Webサーバーのユーザー名およびパスワード名を記述し、Webサーバーにログインします。(ユーザー名とパスワード名は、Webサーバーのアカウントをもらうときに一緒に伝えられたはずです。持ってない場合はまだアカウントを作ってないか、もらったのを忘れているかのどちらかです。確認しなおしましょう。)

次に、index.htmlを置くよう指定されているWebサーバーのフォルダを開きます。(FFFTPの場合は右の欄がWebサーバー側になっているはずですので、そちらのフォルダをダブルクリックするなどして開きます。なお、index.htmlの置き場を知らない場合は、Webサーバーを提供しているサイトあるいは解説書のどこかに解説がありますので必ず確認します。(FC2WEBの場合はログイン後にindex.htmlと一つのフォルダのあるところにアクセスしますので、一切移動する必要はありません。マニュアル参照のこと。)見つからない場合はWebサーバーの管理人に問い合わせてください。)

そして、index.htmlとmenekiフォルダをアップロードします。(FFFTPの場合は、下図のようにこれらを右の欄にドラッグ&ドロップするだけです。(コピーした覚えがないのにもともとindex.htmlが存在する場合、上書きしてもよいことをマニュアルで確認します。FC2WEBの場合は上書きして構いません。)

HTMLファイルのアップロード

また新たにLaTeX2HTMLで作った場合は、index.htmlを編集し、もう1つliを追加して記述し、新たに作ったフォルダとindex.htmlをアップロードします。

ホームページは出来ましたか?何も知らない方には大変な作業でした。でも、少しずつ勉強していけば、そのうち理解も深まり、慣れてくるでしょう。がんばってください。

  目次に戻る

This document is dedicated to the Public Domain! --- この著作権を放棄した文書は「みなさんのもの」です!
This web page is written by Yasuhiro Otomo.
If you have any question about this page, send e-mail to me --- ご質問は大友まで。
You can link to this web page freely! --- リンクはご自由にどうぞ!
This web page typed on MKEditor for Windows 3.8.1-J