綾小路龍之介の素人思考

Vine Linux > LaTeXでpdf文書作成

Vine LinuxにLatexとかgnuplotとかdvipdfmxとかインストールして使えるようにするときのメモ


目次


1.1 [make] *.texのmakefileで*.pdfを作る

makefileは依存関係を書くもの。hoge.texの中で何も参照していない場合。つまり、includegraphixとかしていない場合。

編集したhoge.texはplatexをとおってhoge.dviになる。つまり、hoge.dviはhoge.texに依存している。というわけで下が必要。

hoge.dvi: hoge.tex
	platex hoge.tex

今できたhoge.dviはdvipdfmxをとおってhoge.pdfになる。つまり、hoge.pdfはhoge.dviに依存している。というわけで下が必要。

hoge.pdf: hoge.dvi
	dvipdfmx hoge.dvi

makefile作って普通にmakeとやると選択されるレシピは一番上のレシピから実行される。でもあとからのことを考えてallというレシピを一番上に作っておく。今までの例で行くと、TARGET:SOURCEという行を書いて、タブでインデントしてSOURCEからTARGETを作るコマンドを書いた。つまり、一番下のTARGETつまり、最終的にできるものがallレシピのSOURCEになる。allはhode.texに依存している。

all: hoge.tex

結局欲しいのはhoge.pdfでありhoge.texから作られる中間生成ファイルはいらない。なので、中間生成ファイルをリストアップしておいていつでも消せるようにしておく。このときよくあるレシピの書き方がcleanである。つまるところhoge.dviもhoge.pdfができればいらない。hoge.pdfも印刷したらいらない。ということで、hoge.texとmakefile以外消してしまえ。

clean: hoge.aux hoge.dvi hoge.log hoge.pdf

1.2 [eps][dvipdfmx][graphix][ImageMagick] epsファイル以外の画像ファイルをepsに変えて貼り付ける

ImageMagickを使ってepsファイルにする。ImageMagickのconvertコマンドでjpgとかをepsにしてしまえばその他の設定をいじらずに貼り付けられる。

# apt-get install ImageMagick
# exit
$ convert hoge.jpg hage.eps

1.3 [latex][TEXINPUTS][.bashrc] オリジナルのスタイルファイルをLaTeXコンパイル時に探しにいく

スタイルファイルは、テンプレートで、面倒な設定をあらかじめかいていおくもの。だから、いつもどおりLatex文書作って、何回も書くことをまとめたものと考えていい。ようは、*.texファイルの中で\usepackage{hoge}した位置ににhoge.styの内容が差し込まれるということだ。じゃあどこにhoge.styを探しにいくか?これが環境変数TEXINPUTSで指定される場所だ。環境変数なので~/.bashrcに書き込むことで設定できる。設定の反映は一度ログアウトして再度ログイン。

hoge.styが~/tex/直下にある場合、下のようにしてコマンド打て。

$ echo export TEXINPUTS=.:\$HOME/tex: >> ~/.bashrc

1.4 [latex][dvipdfmx][gnuplot][eps] gnuplotで描いたepsをLaTeXでpdfにするときにエラーでるぞ。

問題は題名のとおり。解決は下。とにかく必要そうなものをインストール。フォントでエラーが出てそうだったので、フォント関係インストールした。そのほかにも確かtexのインストールで問題が起きていたような気がした。

# apt-get install TrueType-base

1.5 LaTeXでincludegraphicsするときにホームディレクトリからの相対パスを指定できない

つまり、したのようにはできないということだ。僕は同じ画像ファイルを複数の文書から参照することがよくあるので、画像ファイルをいれておくディレクトリは1つだけにしている。絶対パスを指定しておけばこれを解決できるが、別マシンにディレクトリごとマウントして編集することもあるので、これは避けたい。

\includegraphics{~/img/hoge.eps}

少なくともLinuxにおける解決策のひとつは、画像ディレクトリのシンボリックリンクをカレントディレクトリ内に作っておくことだ。これでも解決できる。Windowsではどうすればいいのかわからない。

$ ls
hoge.tex
$ ln -s ~/img/
$ ls
hoge.tex img/
$ vi hoge.tex
> \includegraphics{img/hoge.eps}

これでOK。


サイトマップ

  1. CSS > Webサイトのレイアウトの話
  2. DVDリッピングしてaviファイルにするときの計算方法
  3. Debian > インストールメモ
  4. Memo > One Line Diary
  5. Memo > To-Doリスト
  6. Memo > iswebの自動挿入広告の文字コードに関する考察
  7. Memo > リンクとメモ
  8. Memo > 物理屋の独り言
  9. Misc > High Performance Computing(HPC)
  10. PC過去の遺物集
  11. Perl > 1行スクリプト覚書 with Active Perl
  12. Perl > Perl実験室でWeb雑考
  13. Perl > XML::TreePPでXMLサイトマップファイルを生成
  14. Perl > e.cgi のページ ProjectRotation8
  15. Perl > クエリを連想配列で受け取るスマートな方法
  16. Perl > サーバーにアップロードしたcgiのエラーチェック
  17. Perl > ブリコラージュ的 cgi
  18. Programing > プログラムの素人が不思議に思ったこと
  19. Services > Gmail Tips
  20. Services > YourFileHostダウンローダ
  21. Services > twitterはじめました。
  22. Tech > MathMLを使ってみる
  23. Tech > Windows 2000 Professional でLaTeX組版システムを使う
  24. Tech > coLinuxの導入
  25. Tech > サイトのミラーリング
  26. Terapadで作るLaTeX統合環境
  27. Tools > Opera > 設定の諸々
  28. Tools > bashのメモ
  29. Tools > lit2ptoのページ
  30. Tools > vimの設定とtips
  31. Tools > よく使う機能のメモと設定のメモ
  32. VMware > ホストOSがWindows XP Home SP2でゲストOSがVine Linux 4.1
  33. Vine > SSHの暗号化経路を経由してSambaサーバの共有ディレクトリをマウント
  34. Vine Linux > LaTeXでpdf文書作成
  35. Vine Linux > Libretto L1に載せる
  36. Vine Linux > SSH関係の諸々メモ
  37. Vine Linux > サーバを立てたときのメモ
  38. Vine Linux > ソフトウェアRAID
  39. Vine Linux > デスクトップとして使う場合に必要な設定
  40. Wanderlust > inter7でIMAP4
  41. Web Etcetera > サーバー上でファイルを直接編集することについて
  42. Web Etcetera > 検索エンジンが自分のサイトをどのように認識しているか
  43. Web Etcetera > 無料ホームページスペースの広告削除は真か偽か
  44. Winamp > StreamRipperで全自動リッピング
  45. Winamp > タスクマネージャを使って目覚まし時計
  46. Windows > robocopyでフォルダ間同期
  47. Windows > 手動でコーデックをインストールする
  48. gnuplotのプロットギャラリー
  49. rsyncでディレクトリの内容を同期する
  50. wgetのメモ
  51. ネットワーク上にメモ帳を置く
  52. ハードウェア > HDDの再利用
  53. ハードウェア > 安定で快適なマシンはハードから
  54. ブリコラージュ的メールマガジン一括登録解除方法
  55. 初めに
  56. 情報基礎演習UNIX
  57. 窓たちと正く付き合うにはショートカットキーから

コメント


pin

[PR]肢Ղ̗p⏉񖳗:KȌ֓܂{iӒ