LaTeX multicolsの中でfigureやtableを使う方法

2012/03/10

学会に論文を投稿しようと今まであまり使って来なかったLaTeXで論文を書いていたんですが、学会から配布されていたLaTeXテンプレートがmulticolsで2段組にしてありました。

twocolumnを使って2段組にすれば問題なくfigureやtableを使って文章中に図を挿入できるのですが、このmulticolsを使うとfigure*やtable*のように文章と切り離して配置しないと図表が消えてしまう状態になってしまいます。切り離すと好きな場所に図表を挿入できないので困ってしまいます。

調べてみるとどうやら仕様上multicolsはfloat要素となるfigureやtableが使えないということでした。自分でtwocolumnを使ってテンプレートと同じようなデザインを作ろうかとも思いましたが、初心者には難しく、心が折れそうになった頃、解決策の載っているページを見つけることができました。本当に助かりました。

http://www.eng.cam.ac.uk/help/tpl/textprocessing/multicol_hint.html

このサイトは英語なので一応日本語でもここに紹介されている手順を書いておきます。

1. \begin{document}の前に下記を挿入します。


\makeatletter
\newenvironment{tablehere}
  {\def\@captype{table}}
  {}

\newenvironment{figurehere}
  {\def\@captype{figure}}
  {}
\makeatother

2. figureやtableの代わりにfigurehere, tablehereを使う。例えば、


\begin{figure}[h]

...

\end{figure}

\begin{table}[h]

...

\end{table}

と書く代わりに


\begin{figurehere}

...

\end{figurehere}

\begin{tablehere}

...

\end{tablehere}

というように書くとmulticolsでも挿入したい個所に図表を挿入できます。


  このエントリーをはてなブックマークに追加    

<<「PC/ソフトウェア」の記事一覧に戻る

関連記事