列数が多い場合の Longtable エラー

列数が多い場合の Longtable エラー

XeTeX私は、 (TeX Live 2012/W32TeX)を使用していますVersion 3.1415926-2.4-0.9998。2ページ目に示されているような、重音節と軽音節を示す詩の韻律マップが必要です。 このリンクのリンクの例では、重音節と軽音節に長音記号と短音節を使用していますが、私は代わりに数字の 2 と 1 を使用しています。詩がかなり長く、韻律マップが数ページに及ぶため、longtable を使用しています。

以下はコンパイルされない

\documentclass[twoside]{book}
\usepackage{longtable}
\usepackage{array}
\newcolumntype{C}[1]{>{\centering}m{#1}}
\usepackage[top=2.25cm,left=1.25cm,bottom=1.5cm,right=1.25cm,paperwidth=120mm,paperheight=200mm]{geometry}
\begin{document}
\fontsize{9}{11.5}\selectfont
\begin{center}
\begin{longtable}{|@{}C{6mm}@{}|@{}C{6mm}@{}|@{}C{6mm}@{}|@{}C{6mm}@{}|@{}C{6mm}@{}|@{}C{6mm}@{}|@{}C{6mm}@{}|@{}C{6mm}@{}|@{}C{6mm}@{}|@{}C{6mm}@{}|@{}C{6mm}@{}|@{}C{6mm}@{}|@{}C{6mm}@{}|@{}C{6mm}@{}}
1 & 1 & 1 & 1 & 1 & 1 & 1 & 1 & 1 & 1 & 1 & 1 & 2 & 2 \\
tu & ma & ma & ma & pri & ya & bha & ra & ta & hi & sa & ma & bha & i \\
\end{longtable}
\end{center}
\end{document}

エラーが発生します

Extra alignment tab has been changed to \cr.

答え1

\arrabackslash追加する必要がある

\newcolumntype{C}[1]{>{\centering\arraybackslash}m{#1}}

の意味\\が混乱しないようにします。さらに、このような繰り返し列には、

{|*{14}{@{}C{6mm}@{}|}}

コードの読みやすさを向上させます。

\documentclass[twoside]{book}
\usepackage{longtable}
\usepackage{array}
\newcolumntype{C}[1]{>{\centering\arraybackslash}m{#1}}
\usepackage[top=2.25cm,left=1.25cm,bottom=1.5cm,right=1.25cm,paperwidth=120mm,paperheight=200mm]{geometry}
\begin{document}
\fontsize{9}{11.5}\selectfont
\begin{center}
\begin{longtable}{|*{14}{@{}C{6mm}@{}|}}
1  & 1  & 1  & 1  & 1   & 1  & 1   & 1  & 1  & 1  & 1  & 1  & 2   & 2 \\
tu & ma & ma & ma & pri & ya & bha & ra & ta & hi & sa & ma & bha & i
\end{longtable}
\end{center}
\end{document}

ここに画像の説明を入力してください

関連情報