Re: latexでは期待通りだがlatex2htmlではおかしいコマンド

名前: 竹の
日時: 2010-09-09 14:52:54
IPアドレス: 202.243.124.*

>>55237 > このコマンドの動作は理解しておりません。不思議なことに、このコマンドを 不思議ではありません。その理由は既に 55140 の冒頭部分で説明した通りです。 また、LaTeX2HTML は @ が使われているマクロ定義も弱いようです。 LaTeX2HTML でやりたいことを実現する方法はなくはないですが、結論から言う とちょっと面倒です。 1) \usepackage{html} の元、\HTMLsetenv で EQNO_START と EQNO_END の定義 を書き換える LaTeX2HTML の変数 $EQNO_START と $EQNO_END が eqnarray 等の数式番号を囲 むものとして使われているので、 \HTMLstart{EQNO_START}{【数} \HTMLsetenv{EQNO_END}{} とすると一応数式番号は「【数1】」のようになります。 2) <TD WIDTH=10 ... の問題 しかし、問題はこれからで、実は eqnarray は HTML の TABLE タグで実装され ているのですが、数式部分は WIDTH=10 (10 ピクセル) と html4_0.pl 等に直接 書かれているのでオプション等を使って変更することができません。よって、10 ピクセルを越えてしまうような「【数1】」のようなものは縦に分解されて表示 されてしまいます。 これを解消するには、以下のいずれかの方法が考えられます。 [a] 直接 versions/html4_0.pl の WIDTH=10 を少し大きな数字に書き換える [b] versions/html4_0.pl の sub_env_eqnarray 内の WIDTH=10 を 「WIDTH=\"$EQNO_WIDTH\"」のように書き換えて、同じファイルの先頭に 「$EQNO_WIDTH="10";」のように書いておいた上で、LaTeX のソースの方で \HTMLsetenv{EQNO_WIDTH}{10\%} のように書く [c] versions/html4_0.pl 等は触らずに、html4_0.pl から sub_env_eqnarray の部分だけを取り出して versions/mydef.pl 等の名前のファイルを作成し、 それに対して [b] と同様のことを行い (mydef.pl の最後に「1;」で終る行 を忘れずに)、 latex2html -html_version 4.0,mydef file.tex のように実行する 他にも例えば、できた HTML ファイルの WIDTH 部分を手動 (あるいは perl ス クリプトなどを用いて半自動) で書き換える、という手もあるでしょう。

この書き込みへの返事:

お名前
題名 
メッセージ(タグは <a href="...">...</a> だけ使えます。適宜改行を入れてください)