======= kagiPDF ======= :Author: 崎間 :Date: $Date: 2005-07-16 06:47:54 $ 物理のかぎプロジェクト [*]_ で使っている reStructuredText [*]_ から, |latex| によるいい感じの日本語pdfファイルをつくるためのスクリプト群です. .. [*] http://hooktail.org/wiki/ .. [*] http://docutils.sourceforge.net/docs/ref/rst/restructuredtext.html インストール ============ Linux ----- このディレクトリにあるスクリプト(拡張子 .sh および .rb)を実行可能 (chmod a+x)にしたうえで,パスの通ったディレクトリに置いてください. 実行に必要なソフトウェアは - Docutils [*]_ - lv [*]_ - Ruby - platex - jsarticle(日本語 LaTeX ドキュメントクラス) - dvipdfmx - ImageMagick です.特に,Docutilsとlvは最初から入っていない場合が多いので,確認しておいてください. .. [*] http://docutils.sourceforge.net/ .. [*] http://www.ff.iij4u.or.jp/~nrt/lv/ Cygwin ------ 全てのスクリプトの文字コードをShift-JISに変換し,上記手順を踏んでください. Win32TeXのplatex,dvipdfmxを使う場合, :: kagipdf.sh の最後の方にあるコンパイル命令をコメントアウトしてください. 使用方法 ======== pdf化したいreStructuredTextを含むディレクトリに移動して:: $ kagipdf.sh FILE のように実行します.ここでFILEはreStructuredText方式(+物理のかぎプロジェクト仕様) で書いたテキストファイルです.画像ファイルを含む場合は,それらも同じディレクトリになければいけません. 設定ファイル ============ LaTeX文字コードの設定 --------------------- :: kagipdf.sh の45行目あたりにある:: OUTENCODE="-Oej" にて,出力 |latex| ファイルの文字コードを設定してください. デフォルトはLinuxでよく使われるeuc-jpです. Windows上の |latex| (Win32TeX)でコンパイルしたい場合は, 出力文字コードをShift-JISに変える必要があると思います. :: OUTENCODE="-Os" と指定すれば, |latex| ファイルの文字コードをShift-JISとして出力します (改行コードもWindowsに合わせます). |latex| のdocumentclassオプション ------------------------------ :: kagipdfTex.sh の30行目あたり:: DOCUMENTCLASS="jsarticle" DOCUMENTOPTIONS="11pt,a4paper" にて,documentclassオプションを変更することができます (今のところ,フォントサイズ,ペーパーサイズを変更するとレイアウトが崩れます). :: DOCUMENTCLASS="jsbook" DOCUMENTOPTIONS="11pt,a4paper,report" とすれば,表紙が別ページになります. 各ファイルについての説明 ======================== :kagipdf.sh: フロントエンド.このシェルスクリプトからすべてを操作. :kagipdfAtat.rb: 「@@...@@」命令を処理. :kagipdfDispMath.rb: ディスプレイ数式命令を処理. :kagipdfEps.sh: png,jpg,gif ファイルからepsファイルを作成. :kagipdfInMath.rb: インライン数式命令を処理. :kagipdfTex.sh: Docutilsのrst2latex.pyから出力される |latex| ソースを日本語向けにカスタマイズ. 変換処理の手順 ============== 物理のかぎプロジェクトで使用している「拡張 [*]_ を加えたreStructuredTextファイル」:: foo.txt から,本来の仕様に従ったファイル:: foo.reST を作ります.それをrst2latex.pyでコンパイルして |latex| ソースを出力, さらにプリアンブルなどに修正を加えて:: foo.tex を生成します.それから後は,platexでコンパイル, dvipdfmxでpdfファイルを生成,という通常の流れです. また,figureおよびimageディレクティブにより画像を挿入している場合は, 挿入されている画像ファイルを変換してepsファイルをつくり, |latex| ファイルにはepsファイルの画像を挿入します. .. [*] |latex| 数式命令呼び出しの簡素化等.詳細は http://tinyurl.com/czukc を参照してください. 既知のバグ ========== - 数式相互参照拡張「#def」命令に未対応(platexコンパイルで止まる) ToDo ==== - 一括処理できるようにする - コンパイル用 |latex| ファイル,出力用(Webフォームからの保存用等) |latex| ファイルの 文字コード,改行コードを別々に設定できるようにする - |latex| 命令に対する細かな調整 - 画像ファイルが別ディレクトリでも大丈夫なようにする(既に大丈夫かもしれない,未確認) - 「<tex>...<tex>」(本来はすべて半角)そのものを出力できるようにする - 「$...$」(本来はすべて半角)そのものを出力できるようにする - 「@@reference:@@」に対応させる - スタイルファイルを切り替えることにより,出力レイアウトをカスタマイズ可能にする (そうすればレポートや論文にも使えますね!) 更新記録 ======== - [ *2005-07-16* ] 公開(Ver.0.1.0). .. |latex| raw:: latex \LaTeX