発言者: tDB
発言日: 2006 07/12 20:56
発言元: 220.146.124.113
emath とは無関係です。
LaTeX の仕様です。
\multicolumn の乱用が原因です。
以下,LaTeX のソースです。
% --- re4933.tex ---------------------------------
\documentclass[a4j,fleqn]{jarticle}
\usepackage{emathT}
\usepackage{emathCap}
\usepackage{showexample}
\usepackage[hmargin=2.5cm]{geometry}
\begin{document}
これは emath とは無関係で,
\LaTeX の仕様です。
emath とは無関係ですから,これでおしまい,
としても良いのですが,少し分析しておきましょうか。
原因は \verb+\multicolumn+の乱用にあります。
\begin{enumerate}[(1)]
\item 正解から見ていただきましょう。
\begin{jquote}
\begin{verbatim}
\begin{hyou}{|C{1zw}||L{5zw}|C{1zw}||C{3zw}|C{3zw}|C{7zw}|}
\end{verbatim}
\end{jquote}
の指定どおりの表は下のようになります。
\begin{center}
\tbEMcaption{}\label{seikai}
$\renewcommand{\arraystretch}{2.5}
\begin{hyou}{|C{1zw}||L{5zw}|C{1zw}||C{3zw}|C{3zw}|C{7zw}|}\hline
(1)&^ア&(2)&\multicolumn{2}{l|}{^イ\hspace{2mm} (\hspace{7mm},\hspace{7mm})}&\multicolumn{1}{L{7zw}|}{^ウ\hspace{2mm} (\hspace{7mm},\hspace{7mm})}\\\hline
&\multicolumn{2}{l|}{^エ}&\multicolumn{1}{L{3zw}}{^オ}&\multicolumn{1}{C{3zw}}{}&\\\hline
&\multicolumn{3}{l|}{^カ}&\multicolumn{2}{l|}{^キ}\\\hline
(4)&^ク&(5)&\multicolumn{2}{l|}{^ケ\hspace{2mm} (\hspace{7mm},\hspace{7mm})}&\multicolumn{1}{l|}{^コ\hspace{2mm} (\hspace{7mm},\hspace{7mm})}\\\hline
\end{hyou}$
\end{center}
\item 質問者が提示されたリスト (以下,\texttt{4933.tex}と呼びます)
をタイプセットした結果と比べてみます:
\begin{center}
\tbEMcaption{}\label{moto}
\renewcommand{\arraystretch}{2.5}
$\begin{hyou}{|C{1zw}||L{5zw}|C{1zw}||C{3zw}|C{3zw}|C{7zw}|}\hline
(1)&^ア&(2)&\multicolumn{2}{l|}{^イ\hspace{2mm} (\hspace{7mm},\hspace{7mm})}&\multicolumn{1}{l|}{^ウ\hspace{2mm} (\hspace{7mm},\hspace{7mm})}\\\hline
&\multicolumn{2}{l|}{^エ}&\multicolumn{3}{l|}{^オ}\\\hline
&\multicolumn{3}{l|}{^カ}&\multicolumn{2}{l|}{^キ}\\\hline
(4)&^ク&(5)&\multicolumn{2}{l|}{^ケ\hspace{2mm} (\hspace{7mm},\hspace{7mm})}&\multicolumn{1}{l|}{^コ\hspace{2mm} (\hspace{7mm},\hspace{7mm})}\\\hline
\end{hyou}$
\end{center}
正解の表\ref{seikai}と比較すると,第3行の違いが目立ちます。
そのほかにも,表全体の横幅が若干異なっています。
\item 表\ref{moto}における第3行の現象についての分析です。
一言でいえば,\verb+\multicolumn+の乱用です。
\textsf{tabular (array)}環境において\verb+\multicolumn+を使用するときは,
次の条件(※)が満たされていなければなりません。
\begin{jquote}
\begin{description}
\item[(※)] 各列について,少なくとも1つの行は\verb+\multicolumn+によって
他の行と結合されていないこと
\end{description}
\end{jquote}
表\ref{moto}のリスト --- \texttt{4933.tex} --- をご覧ください:
\begin{jquote}
\begin{verbatim}
\begin{hyou}{|C{1zw}||L{5zw}|C{1zw}||C{3zw}|C{3zw}|C{7zw}|}\hline
(1)&^ア&(2)&\multicolumn{2}{l|}{^イ\hspace{2mm} (\hspace{7mm},\hspace{7mm})}
&\multicolumn{1}{l|}{^ウ\hspace{2mm} (\hspace{7mm},\hspace{7mm})}\\\hline
&\multicolumn{2}{l|}{^エ}&\multicolumn{3}{l|}{^オ}\\\hline
&\multicolumn{3}{l|}{^カ}&\multicolumn{2}{l|}{^キ}\\\hline
(4)&^ク&(5)&\multicolumn{2}{l|}{^ケ\hspace{2mm} (\hspace{7mm},\hspace{7mm})}
&\multicolumn{1}{l|}{^コ\hspace{2mm} (\hspace{7mm},\hspace{7mm})}\\\hline
\end{hyou}
\end{verbatim}
\end{jquote}
この表は4行6列です。列についての条件(※)を確認しましょう。1行目の記述
\begin{jquote}
\begin{verbatim}
(1)&^ア&(2)&\multicolumn{2}{l|}{^イ\hspace{2mm} (\hspace{7mm},\hspace{7mm})}
&\multicolumn{1}{l|}{^ウ\hspace{2mm} (\hspace{7mm},\hspace{7mm})}\\\hline
\end{verbatim}
\end{jquote}
から,第1〜3列は\verb+\multicolumn+を使わずに表現されていますから,
「問題なし」です。第6列は\verb+\multicolumn{1}{...+ですから,
他の列と結合されていませんので,条件(※)は満たされています
(ただし,列幅については「問題あり」です\footnote{%
ここまでの話は,\textsf{emath}とは無関係でしたが,
第6列の列幅は\textsf{emath}がらみの話となります。
\texttt{4933.tex}では,第6列は`\texttt{C\{7zw\}|}'と指定されています。
したがって
`\cmd{multicolumn}\texttt{\{1\}\{l|\}}'
では不十分で,
`\cmd{multicolumn}\texttt{\{1\}\{L\{7zw\}|\}}'
として,列幅を明示しておく必要がある,ということです。
}
)。
残りの2〜4行でも,第4, 5列は,他の列と結合されており,
条件(※)を満たしていないことがわかります。
ということで,\LaTeX は,第4, 5列についてはその列幅を決めることが出来ず,
正しい結果は得られないこととなります。
\item さて,対策です。一言でいえば,条件(※)が満たされるようにすればよい,です。
ここでは,第2行の記述
\begin{jquote}
\begin{verbatim}
&\multicolumn{2}{l|}{^エ}
&\multicolumn{3}{l|}{^オ}\\\hline
\end{verbatim}
\end{jquote}
を修正します。
第4, 5, 6の3列をくくって\verb+\multicolumn{3}...+としていますが,これを分割して
\begin{jquote}
\begin{verbatim}
&\multicolumn{2}{l|}{^エ}
&\multicolumn{1}{L{3zw}}{^オ}&\multicolumn{1}{C{3zw}}{}&\\\hline
\end{verbatim}
\end{jquote}
としたのが表\ref{seikai}です。
\end{enumerate}
(注)別の対策として,\cmd{omit}を用いる方法もありますが,別の機会に.....
\end{document}
▼関連発言
│
└◆4933:hyou環境の列結合について [toshi] 07/12 13:50
└◆4934:Re:hyou環境の列結合について [tDB] 07/12 20:56
├◆4935:Re[2]:hyou環境の列結合について [toshi] 07/13 07:02
└◆4936:Re[2]:hyou環境の列結合について [tDB] 07/13 20:05
└◆4945:Re[3]:hyou環境の列結合について [toshi] 07/18 11:01<-last