Beamer 表が3行以上表示できない

Beamer 表が3行以上表示できない

- 山田 太郎 の投稿
返信数: 6
Beamerで表を使おうと試みたのですが、3行以上表示されず困っています。

¥begin{frame}
¥begin{table}[htb]
¥begin{tabular}{l|l|l}
Rank & Programing Language & Rating ¥¥ ¥hline¥hline
1 & Java & 21.145 ¥¥ ¥hline
2 & C & 15.594 ¥¥ ¥hline
3 & C++ & 6.907 ¥¥ ¥hline
¥end{tabular}
¥end{table}
¥end{frame}

これだとタイプセットできるのですが、

¥begin{frame}
¥begin{table}[htb]
¥begin{tabular}{l|l|l}
Rank & Programing Language & Rating ¥¥ ¥hline¥hline
1 & Java & 21.145 ¥¥ ¥hline
2 & C & 15.594 ¥¥ ¥hline
3 & C++ & 6.907 ¥¥ ¥hline
4 & C# & 12 ¥¥ ¥hline
¥end{tabular}
¥end{table}
¥end{frame}


.beamer.text:70:Illegal parameter number in definition of \test.
<to be read again>

l.70 \end{tabular}

?


こうするとこのようなエラーになります。
どなたか、お願いします




山田 太郎 への返信

Re: Beamer 表が3行以上表示できない

- aminophen の投稿
> .beamer.text:70:Illegal parameter number in definition of \test.

ソースをよく見ると「C#」とあります。
「#」は TeX では「特殊文字」で,コマンドの引数(パラメタ)を表します。
ほら,エラーメッセージに parameter とありますよね?
(\newcommand などを使ったことがあればご存知のはず)
「#」をそのまま出力する方法は…これはさすがにご存知でしょう。
aminophen への返信

Re: Beamer 表が3行以上表示できない

- 山田 太郎 の投稿
なるほど、特殊文字はパラメタと出るのですね・・・。

オプションで「contains verbatim」を指定して、「#」の部分を

\begin{verbatim} # \end{verbatim}

のようにすればいいのでしょうか?

山田 太郎 への返信

Re: Beamer 表が3行以上表示できない

- aminophen の投稿
特殊文字はパラメタと出るのですね・・・

違います。「#」“は” parameter です。TeX Wiki の「LaTeX マクロの作成」の
引数をとる命令」を参照してください。「#1」などという書き方があります。
ほかにも特殊文字には「$」とかありますよね。(数式の始めと終わり)
アンダーバー「_」も特殊文字です。(数式の中の下付き文字)
これらを生で本文中に「$」とか「_」だけ書いたらどんなエラーが出るか試して
みると勉強になるでしょう。

「#」の出し方は…なんでも教えるのはよくないのでググってください。
試しに「LaTeX コマンド 特殊文字 シャープ」くらいでググったら出てきましたヨ。

ちなみに parameter の # は「シャープ」ではなく「ナンバーサイン」と呼ぶ
のが正しく,「シャープ」は ♯ という別の記号ですが…
そして C♯ は「C・シャープ」なのだが… まあいいや。
aminophen への返信

Re: Beamer 表が3行以上表示できない

- 山田 太郎 の投稿
parameter については勉強いたします・・・。

「#」を正しく出す方法として、
\#
\verb|#|
\begin{verbatim} # \end{verbatim}

が出てきました。
しかし、表の中でこれをやろうとするとどうしてもエラーが出ています。
frameのオプションには[containsverbatim]を指定しています。

C#には目をつぶっていただきたい・・・・・・・
山田 太郎 への返信

Re: Beamer 表が3行以上表示できない

- aminophen の投稿
> 「#」を正しく出す方法として

beamer でも jsarticle でも基本は一緒です。基本をおさえていれば,別に
[containsverbatim] なんて格好付ける必要はありません。
最初に示していただいたソースの「#」を「\#」に変えれば通るでしょう?

\documentclass[dvipdfmx]{beamer}
\begin{document}
\begin{frame}
\begin{table}[htb]
\begin{tabular}{l|l|l}
Rank & Programing Language & Rating \\ \hline\hline
1 & Java & 21.145 \\ \hline
2 & C & 15.594 \\ \hline
3 & C++ & 6.907 \\ \hline
4 & C\# & 12 \\ \hline
\end{tabular}
\end{table}
\end{frame}
\end{document}

beamer を使っていてエラーが出るからといって beamer の使いかたがわかって
いないとは限りませんし,「#」は parameter を意味することも beamer 以前の
「LaTeX の知識」にあたります。
もし \newcommand を使って「自作マクロ」を書いたことがなければ是非
LaTeX 入門/LaTeX マクロの作成」は目を通せばきっと役に立ちます。
(そうなるように書いたつもり)
先日の \begin … \end も同様に beamer とは無関係です。
エラーが出るときはそのエラーメッセージを読めば分かる場合もあります。
分からない場合はエラーメッセージをコピペして検索すれば大体わかります。
試し方が足りないと思います。
aminophen への返信

Re: Beamer 表が3行以上表示できない

- 山田 太郎 の投稿
ずっと「\#」にしても通らず困惑してたところ、後ろに目をやったら「\\」を付け忘れていただけでした。

>beamer 以前の「LaTeX の知識」にあたります。

自分の勉強不足で大変お恥ずかしい限りです。
今一度「LaTeX」の使い方を学んでまいります。