■ pLaTeX Tips
WindowsのTeX環境構築\maketitleで日付を出力しないようにする
目次を作成するには?
番号なしの見出しにするには?
節(\section)の書式,出力位置を変更したい(\section命令の再定義)
段落の制御をするためには?
章,節,図,表,式,ページの参照
書体を変えるには?
フォーマルスクリプトを使う
文中での特殊記号
分数の記述
条件式
ギリシャ文字
数式中にアクセントをつけるには?
数式で特殊記号を記述するには?
オペレータ(演算子)
大型記号
角度の単位記号「゚」を書きたい
数学関数
括弧の大きさを自動調節するには?
索引をつけるには?
キャプションの書式を変更する
・キャプションの「:」を消す,あるいは変更
・キャプションの文字サイズを変更
minipage環境で図を並べたときに,キャプションが近すぎるんですが...
ブロックコメントの仕方
JPEGからPSファイルを作るには
WMF/EMFからEPSをつくるには?(WMF2EPSの使い方)
EPSFのBoundingBoxを調節する
グラフィックスで描画範囲を指定するには
フローチャートを書くには
2段組時に最終ページの下端を揃えるには
! File ended while scanning use of \next. <inserted text> \par
Acrobatで綺麗なpdfが作れないときはどうする?
dvipdfmのメモ
dvipdfmでのエラー
GSviewの設定
WindowsのTeX環境構築(20090317加筆)
1. TeX関連のプログラムの本体をインストール
1) 適当な一時フォルダ(例えばc:\temp)を作成する.
2) ftp://akagi.ms.u-tokyo.ac.jp/pub/TeX/win32/等からTeX関連のバイナリをダウンロードし,一時フォルダに入れる.
3) TeXをインストールするフォルダ(例えばc:\usr\local)を作成し,そこに先程ダウンロードしたバイナリの中のtexinst***.zipを解凍する.
4) コマンドプロンプトでカレントのフォルダをTeXをインストールするフォルダにし,一時フォルダのパスを引数としてtexinst***.exeを走らせる.
→usr\local\下にbin\, share\というフォルダができることを確認.
5) 次のユーザ環境変数を登録.
変数名:PATH
値:"%PATH%";c:\usr\local\bin ←ドライブレター等は適当に変える
6) これでTeXのインストールは終わりなので,正しくインストールされているか確認する.
・適当な作業フォルダ(例えばc:\work)に以下の内容のtest.texというテキストファイルを保存する.
\documentclass{jarticle}
\begin{document}
てすと.テスト.test.\TeX
\end{document}
・コマンドプロンプトを再起動し,作業フォルダに移動して以下のコマンドを入力.
C:\destination>platex test(.tex)![]() C:\destination>dvipdfmx test(.dvi) ![]() C:\destination>(start) test.pdf ![]() |
・以下の内容のPDFが起動すればTeXは正常にインストールできている.
2. Ghostscriptのインストール
GhostscriptはPostScript言語のインタープリタです.
GhostscriptによってEPSFをWindows上で表示させたり,非PostScriptプリンタに出力したりすることができるようになります.
1) http://www.ring.gr.jp/pub/text/TeX/ptex-win32/gs/等からgs***w32full.zipをダウンロードして解凍する.
2) setupgs.exeを実行してインストールする.
3) 今後のためにドライブレター:\ghostscript\gs\gs*.**\binにPATHを通しておく.(古いバージョンでは環境変数GS_LIBの設定も必要)
3. dvioutのインストール(20090312更新)
1) ftp://akagi.ms.u-tokyo.ac.jp/pub/dos/dviout/等からtex***w.exeをダウンロードして実行.
2) 「Font path is not set. Install fundamental parameters?」と聞いてくるので[はい(Y)]を選択.
Resolution of font(dpi),Paper sizeを入力.
Resister the location of Font filesでGuessを押してフォントの場所を自動設定.
Resister Programsでgen,gsxを押して自動設定.
Finishを押して完了.
3) インストールの確認
・先程インストールしたGhostscriptの\gs\gs*.**\examplesにあるgolfer.(e)ps,tiger.(e)psを\dviout\GRAPHIC\PSに(*.psとして)コピー.
・dvioutで\dviout\GRAPHIC\PS\epsfdoc.dviを開いて3ページ目に絵が表示されれば成功.
4. GSviewのインストール
1) http://www.ring.gr.jp/pub/text/CTAN/support/ghostscript/ghostgum/等からgsv**w32.exeをダウンロードして実行.
1.1)インストール後にOptions-Advanced Configure...を設定.「Ghostscript Options:」には「-dWINKANJI」を追加する.
2) PushGsRg(http://hp.vector.co.jp/authors/VA023018/pushgsrg.htm)やAuto Clickerを使うと便利.
5. WinShell,L'ecrivain等のTeX用のエディタを入れると良い.
エディタの設定:
TeX コンパイラ: C:\tex\usr\local\bin\platex.exe
DVIビューアー: C:\dviout\dviout.exe
など.
\maketitleで日付を出力しないようにする
\maketitle命令では,プリアンブルに定義した\title,\author,\dateの情報を出力するが,
日付を出力したくない場合は\date{}とする.
(\dateを省略するとコンパイル時の日付が出力される)
目次を作成するには?
目次を挿入したい場所に
\tableofcontents
とする.
番号なしの見出しにするには?
コマンド名のうしろにアスタリスク(*)をつける.
e.g.)
\part*{部}
\chapter*{章}
\section*{節}
\subsection*{項}
\subsubsection*{目}
\paragraph*{段落}
\subparagraph*{小段落}
節(\section)の書式,出力位置を変更したい(\section命令の再定義)
節の書式や出力位置を.texファイル内で変更したい場合はプリアンブルに\section命令の再定義をすればよい.
\makeatletter
\renewcommand{\section}{%set \section command
\@startsection{section}%見出し
{1}%見出しのレベル
{\z@}%インデント量
{1.5\Cvs \@plus.5\Cdp \@minus.2\Cdp}%見出し上の空き
{.5\Cvs \@plus.3\Cdp}%見出し下の空き
{\reset@font\normalsize\bfseries}%見出しの属性(左揃え)
% {\centering\reset@font\Large\bfseries}%中央揃え
% {\raggedleft\reset@font\Large\bfseries}%右揃え
}
\makeatother
\section command
段落の制御をするためには?
空行を一行入れる.あるいは,段落を変えたい場所に
\par
という命令を記述する.空行を入れたくないときには\parを使う.
章,節,図,表,式,ページの参照
\label{label}
で参照対象にラベルを設定し,
\ref{label}
で参照する.ページ番号で参照する場合は
\pageref{label}
とする.
書体を変えるには?
サンプルコマンド | プレビューアでの表示 |
\textit{Italic} | ![]() |
\textbf{Bold} | ![]() |
\textmd{Medium} | ![]() |
etc. | etc. |
フォーマルスクリプトを使う (20071111更新)
1. CTAN,LightStoneさん等からrsfs(Ralph Smith's Formal Script font)パッケージを入手.
2. rsfs.styをスタイルファイルの入っているディレクトリ(フォルダ)に,
*.mfをメタフォントソースが入っているディレクトリにそれぞれ入れる.
3. プリアンブルで\usepackage{rsfs}とし,本文中で\mathscr{ABCDE}とする.
使用例:
\int_{-\infty}^{+\infty}\frac{|(\mathscr{F}\psi)(\omega)|^2}{|\omega|}d\omega\textless+\infty
出力:

文中での特殊記号
コマンド | プレビューアでの表示 |
\# | ![]() |
\$ | ![]() |
\% | ![]() |
\& | ![]() |
\_ | ![]() |
\textless | ![]() |
\textgreater | ![]() |
`` | ![]() |
" | ![]() |
etc. | etc. |
分数の記述
\frac{分子}{分母}
条件式

のように記述するには,
\begin{eqnarray}
\eta(d_j(k))=\left\{ \begin{array}{ll}
d_j(k), & \mbox{if $|d_j(k)|>p$}\\
0, & \mbox{if $|d_j(k)|\le p$}
\end{array}\right.
\label{eq:hard_thresholding}
\end{eqnarray}
とする.
ギリシャ文字
小文字
コマンド | プレビューアでの表示 |
\alpha | ![]() |
\beta | ![]() |
\gamma | ![]() |
\delta | ![]() |
\epsilon | ![]() |
\varepsilon | ![]() |
\zeta | ![]() |
\eta | ![]() |
\theta | ![]() |
\vartheta | ![]() |
etc. | etc. |
数式中にアクセントをつけるには?
$\hat{a},\check{a},\breve{a},\acute{a},\grave{a},\tilde{a},\bar{a},\dot{a},\ddot{a},\vec{a}$
プレビューアではこうなる.
数式中で特殊記号を記述するには?
コマンド | プレビューアでの表示 |
\aleph | ![]() |
\hbar | ![]() |
\imath | ![]() |
\jmath | ![]() |
\ell | ![]() |
\wp | ![]() |
\Re | ![]() |
\Im | ![]() |
\partial | ![]() |
\infty | ![]() |
\prime | ![]() |
\emptyset | ![]() |
etc. | etc. |
オペレータ(演算子)
コマンド | プレビューアでの表示 |
\pm | ![]() |
\mp | ![]() |
\times | ![]() |
\div | ![]() |
\ast | ![]() |
\star | ![]() |
\circ | ![]() |
\bullet | ![]() |
\cdot | ![]() |
< | ![]() |
\le(\leq) | ![]() |
> | ![]() |
\ge(\geq) | ![]() |
etc. | etc. |
大型記号
コマンド | プレビューアでの表示 |
\sum | ![]() |
\prod | ![]() |
\coprod | ![]() |
\int | ![]() |
\oint | ![]() |
etc. | etc. |
角度の単位記号「゚」を書きたい
上付き文字と\circを使って
180$^{\circ}$
とすればよい.出力はこのようになる.
数学関数
コマンド | プレビューアでの表示 |
\ln | ![]() |
\log | ![]() |
\sin | ![]() |
\sinh | ![]() |
\sup | ![]() |
etc. | etc. |
括弧の大きさを自動調節するには?
左括弧の前には
\left
右括弧の前には
\right
命令を記述する.
索引をつけるには?
プリアンブルに
\usepackage{makeidx}
\makeindex
と記述.
本文中の索引を作成したい語のあとに
\index{word }
と記述する.例えば索引を作成したい語がradiationの場合,
radiation\index{radiation}
とする.漢字等の場合は読みを加える必要がある.例えば索引を作成したい語が放射線の場合,
放射線\index{ほうしゃせん@放射線}
とする.そして,索引を出力する箇所に
\printindex
とする.
その後,ページ番号が確定するまで複数回TeXで処理を行う.
できた.idxファイルをmendex.exeで処理する.具体的にはDOSプロンプトにおいて
mendex filename.idx
とする.
再びTeXで処理する.
キャプションの書式を変更する (200504加筆)
・キャプションの「:」を消す,あるいは変更
使用しているクラスファイル「filename.cls」の「\@makecaption」を変更する.
例えば,ドキュメントクラスが「jarticle」の場合,「jarticle.cls」の
…
\long\def\@makecaption#1#2{%
\vskip\abovecaptionskip
\iftdir\sbox\@tempboxa{#1\hskip1zw#2}%
\else\sbox\@tempboxa{#1: #2}%
←「:」を変更
\fi
\ifdim \wd\@tempboxa >\hsize
\iftdir #1\hskip1zw#2\relax\par
\else #1: #2\relax\par\fi ←「:」を変更
\else
\global \@minipagefalse
\hbox to\hsize{\hfil\box\@tempboxa\hfil}%
\fi
\vskip\belowcaptionskip}
…
となっている部分の指定箇所を変更する.
・注意:caption packageを使用している場合は,その中でも「:」が定義されているのでクラスファイルでの変更が上書きされてしまいます.
そのため,caption.styの中も変更必要があります.
・キャプションの文字サイズを変更
方法1. 使用しているクラスファイル「filename.cls」の「\@makecaption」を変更
クラスファイルfilename.clsの
\long\def\@makecaption#1#2{%
を
\long\def\@makecaption#1#2{\scriptsize%
とすればscriptsizeになる.
方法2. caption packageを使用する
プリアンブルで
\usepackage[scriptsize]{caption}
とする.他のオプションはcaption.pdf等を参考.
minipage環境で図を並べたときに,キャプションが近すぎるんですが...
minipage環境で図を並べて長いキャプションを書くと
下図のようにキャプション間が近くて見難くなってしまったので
以下のようにした.
caption 1
\begin{figure}[ht]
\hspace{-3mm} ←この行を追加.数値は適当に変化させる.
\begin{minipage}{0.5\hsize}←数値を適当に変化させる.
\begin{center}
\vspace{0mm}
\includegraphics[width=5cm]{filename1.eps}
\caption[s]
{*** resolution *** 3.6×10$^8$ pps.}
\label{label1}
\vspace{0mm}
\end{center}
\end{minipage}
\hspace{5mm} ←この行を追加.数値は適当に変化させる.
\begin{minipage}{0.5\hsize}←数値を適当に変化させる.
\begin{center}
\vspace{0mm}
\includegraphics[width=5cm]{filename2.eps}
\caption[s]
{*** resolution *** 6.0×10$^7$ pps.}
\label{label2}
\vspace{0mm}
\end{center}
\end{minipage}
\end{figure}
caption 2
ブロックコメントの仕方
通常 texでは%記号によりラインコメントとするが,広範囲をコメントアウトするには不便なので
comment.styでブロックコメントが使えるようにすると便利.
使い方:プリアンブルでcomment.styを読み込み,コメントアウトする領域を\begin{comment},\end{comment}で囲む.
JPEGからPSファイルを作るには(20071111更新)
jpeg2psを使うと便利.
・使い方
コマンドプロンプトで
jpeg2ps.exe [options] jpegfilename.jpg > psfilename.eps |
とする.
EPSFのBoundingBoxを調節する
EPSF(encapsulated postscript file)最初には以下のようなヘッダー情報がある.
%!PS-Adobe-2.0 EPSF-1.2
%%BoundingBox: 60 3 400 280
%%HiResBoundingBox: 91.5625 3.1875 367.563 279.188
%%Creator: (Mathematica 4.0 for Microsoft Windows)
%%CreationDate: (2003\:5E7410\:670828\:65E5\:706B\:66DC\:65E5) (4:20:39)
%%Title: Clipboard
%%DocumentNeededResources: font Courier
%%DocumentSuppliedResources:
%%DocumentNeededFonts: Courier
%%DocumentSuppliedFonts:
%%DocumentFonts: Courier
%%EndComments
…
このヘッダーのBoundingBox(2行目)を
直接テキストエディタで編集する.
グラフィックスで描画範囲を指定するには
\includegraphics命令でclipオプション,viewportオプションを使用する.
例
\begin{figure}[htbp]
\begin{center}
\includegraphics[width=15cm,clip,viewport=llx lly urx ury]{figure.eps}
\end{center}
\caption{figure}
\label{label}
\end{figure}
ここで,llx,llyは描出したい範囲の左下の座標(llx, lly)
urx,uryは右上の座標(urx, ury)である.
EPSF(encapsulated postscript file)のBoundingBoxは
テキストエディタで直接調節することもできる.
フローチャートを書くには(diaの項も参考)
スタイルシートを使用する方法があるが,現時点ではなかなかいいのがないようなので,
flowというプログラムを使用することにした.
これはある書式で書いたフローチャートの命令をTeXのpicture環境の命令に変換してくれる
一種のフィルタのようなものです.
使い方:
1. flowの書式にしたがって命令を書く.
2. コマンドプロンプトや端末で
flow_<inputfilename.txt_>outputfilename.txt |
などとする.
3. 出力されたTeXの命令を挿入したいTeXのファイルにコピーペーストする.
4. 後は通常どおりTeXで処理する.
2段組時に最終ページの下端を揃えるには
2段組時に最終ページの下端を揃えるにはbalance.styが使えます.
balance.styがない場合は,以下のようにbalance.styを作成.
1. CTAN等からbalance.dtx,balance.insをダウンロードし,同じフォルダに保存.
2. balance.insをplatexで処理すると,balance.sty等ができる.
C:\destination\platex balance.ins |
3. 使い方
3.1 プリアンブルで\usepackage{balance}とする.
3.2 最終ページで\balanceとする.
![]() |
![]() |
before \balance | after \balance |
! File ended while scanning use of \next. <inserted text> \par
! File ended while scanning use of \next.
<inserted text>
\par
というエラーが出て,「行末の%がエラーを引き起こしました」を参考にして解決しない場合は,どこかに「ゴミ」が入っている可能性があるので,確認.
Acrobatで綺麗なpdfが作れないときはどうする?(20040304更新)
DVIOUTからCtrl+PしてAcrobatでpdfを作成すると,フォントの一部がうまくいかないときがある.
この場合はdvipdfmを使うと解決できることがある.
dvipdfmの使い方:
e:\...\dvipdfm dvifilename(.dvi) dvifilename.dvi > dvifilename.pdf [1][2][3][4][5]... 124 bytes written |
(コマンドからpdfを起動するには)
e:\...\(start) dvifilename.pdf |
dvipdfmのメモ The DVIPDFM page
・ページの指定
e.g.) 1-10及び20ページを出力
dvipdfm -s 1-10,20 filename.dvi
・用紙サイズの指定
e.g.) B4で出力
dvipdfm -p b4 filename.dvi
dvipdfmでのエラー (200512加筆)
dvipdfmでPDFを作成しようとすると以下のエラーメッセージが出ることがある.
Error 1.
dvifilename.dvi -> pdffilename.pdf [1][2(./epsfilename.eps<?>Error: /undefined in ナミモニ`f Operand stack: Execution stack: %interp_exit .runexec2 --nostringval-- --nostringval-- --nostringval- - 2 %stopped_push --nostringval-- --nostringval-- --nostringval-- fa lse 1 %stopped_push 1 3 %oparray_pop 1 3 %oparray_pop .runexec 2 --nostringval-- --nostringval-- --nostringval-- 2 %stopped_push -- nostringval-- --nostringval-- --nostringval-- Dictionary stack: --dict:992/1476(ro)(G)-- --dict:0/20(G)-- --dict:86/200(L)-- Current allocation mode is local Current file position is 7 GNU Ghostscript 6.52: Unrecoverable error, exit code 1 gsdll_init returns 1 Conversion via ->gswin32c -q -dNOPAUSE -dBATCH -sPAPERSIZE=ledger -sDEVICE=pdfwr ite -dCompatibilityLevel=1.2 -dUseFlateCompression=true -sOutputFile=\suk. ./epsfilename.eps -c quit<- failed ) pdf: image inclusion failed for (epsfilename.eps). ... |
これはGhostscriptからのエラーメッセージで,
EPSFにプレビューが付いる場合にうまく開けないために出るエラーであるため,
プレビューを含まないEPSFを使用するとよい.
既存のEPSFからプレビューを削除するにはGSviewで
Edit-Extract EPS-PostScriptでEPSFを出力すればよい.
テキストエディタでもプレビューは削除できる.
Error 2.
C:/paper/paper.dvi -> paper.pdf [1][2][3][4(IMAGE:./epsfile.eps[PS]Error: /invalidfont in findfont Operand stack: courier Courier Font Courier 246100 Courier --nostringval-- Cou rier NimbusMonL-Regu (NimbusMonL-Regu) NimbusMonL-Regu (NimbusMonL-Regu) NimbusMonL-Regu Execution stack: %interp_exit .runexec2 --nostringval-- --nostringval-- --nostringval- - 2 %stopped_push --nostringval-- --nostringval-- --nostringval-- fa lse 1 %stopped_push 1 3 %oparray_pop 1 3 %oparray_pop --nostri ngval-- 1 3 %oparray_pop 1 3 %oparray_pop .runexec2 --nostringva l-- --nostringval-- --nostringval-- 2 %stopped_push --nostringval-- 2 4 %oparray_pop 3 4 %oparray_pop --nostringval-- --nostringval-- --nostringval-- --nostringval-- --nostringval-- false 1 %stopped_pus h 6 5 %oparray_pop --nostringval-- --nostringval-- --nostringval-- 5 -1 1 --nostringval-- %for_neg_int_continue --nostringval-- --nost ringval-- Dictionary stack: --dict:1055/1123(ro)(G)-- --dict:0/20(G)-- --dict:75/200(L)-- --dict:22 /64(L)-- --dict:17/17(ro)(G)-- --dict:1055/1123(ro)(G)-- Current allocation mode is local Last OS error: No such file or directory Current file position is 2280 AFPL Ghostscript 8.00: Unrecoverable error, exit code 1 ** WARNING ** Conversion via ->gswin32c -q -dSAFER -dNOPAUSE -dBATCH -sPAPERSIZE =a0 -sDEVICE=pdfwrite -dCompatibilityLevel=1.3 -dAutoFilterGrayImages=false -dAu toFilterColorImages=false -dGrayImageFilter=/FlateEncode -dColorImageFilter=/Fla teEncode -dUseFlateCompression=true -sOutputFile=./pdfmaa02024 -c .setpdfwrite - f ./epsfile.eps -c quit<- failed. ** WARNING ** pdf: image inclusion failed for (epsfile.eps). )][5]... |
これはdvioutのニコちゃんマークから実行した時に出たエラー.コマンドから実行しても同様のエラーが出た.
どうやらフォント関係のエラーらしいがよく分からなかったので,
試しにCtrl+PでAcrobat PDFWriterから作成したらエラーが出ずにPDFを出力できた.(売れ筋PDFソフトはこちら)
GSviewの設定
GSviewで
Can't find (or open) initialization file (kfwin32.ps)
gsdll_init returns -100
Unloaded GSDLL
などとエラーが出る場合は環境変数が適切に設定されていないことが考えられるため,
以下の環境変数を登録する.
変数名:GS_LIB
値:ドライブレター:\ghostscript\gs\gs*.**\lib;ドライブレター:\ghostscript\gs\gs*.**\kanji;ドライブレター:\ghostscript\gs\fonts