この LaTeX テーブルの最後の行で、図のようにテキストを自動的に折り返すにはどうすればよいですか?

この LaTeX テーブルの最後の行で、図のようにテキストを自動的に折り返すにはどうすればよいですか?

最後の行は画像のように折り返されるはずです

\documentclass[a4paper,headsepline,12pt,toc=index,
toc=bibliography,ngerman]{scrreprt}

\usepackage{multirow}
\usepackage{graphicx}


\begin{document}

{
\renewcommand{\arraystretch}{2}
\begin{table}[htbp]
    \centering
    \caption{My caption}
    \label{my-label}
    \resizebox{\textwidth}{!}{%
        \begin{tabular}{|c|c|c|c|c|c|c|}
            \hline
            \multirow{2}{*}{\textbf{Method}}                                               & \multicolumn{2}{c|}{\textbf{\begin{tabular}[c]{@{}c@{}}Non-frictional  Parallelepiped\end{tabular}}} & \multicolumn{2}{c|}{\textbf{\begin{tabular}[c]{@{}c@{}}Non-frictional  Knight\end{tabular}}} & \multicolumn{2}{c|}{\textbf{\begin{tabular}[c]{@{}c@{}}Frictional  Knight\end{tabular}}} \\ \cline{2-7} 
            & \multicolumn{2}{c|}{1880 Experimental Cases}                                                                    & \multicolumn{2}{c|}{21357 Experimental Cases}                                                           & \multicolumn{2}{c|}{21357 Experimental Cases}                                                       \\ \hline
            \multirow{2}{*}{\begin{tabular}[c]{@{}c@{}}Modified  NEW Method \end{tabular}} & Final Quality                                                                        & Time (s)        & Final Quality                                                                     & Time (s)   & Final Quality                                                                   & Time (s) \\ \cline{2-7} 
            & \begin{tabular}[c]{@{}c@{}}0.200 in 30 samples  with pop size 400\end{tabular}        & 35.0            & \begin{tabular}[c]{@{}c@{}}0.126 in 20 samples  with pop. size 200\end{tabular}    & 63.8       & \begin{tabular}[c]{@{}c@{}}0.146 in 20 samples  with pop. size 200\end{tabular}  & 368.8    \\ \hline
        \end{tabular}%
    }
\end{table}

}


\end{document}

答え1

tabularx7 つの等幅列を持つ環境を使用することをお勧めします。これにより、すべての内部tabular環境を省くことができます。また、このアプローチでは、表形式の資料をテキスト ブロックの幅内に収めるための指示も不要になります\resizebox。このアプローチを採用した結果は、以下の最初の表に示されています。

このテーマのバリエーションとして、すべての列の幅を同じにする必要はない(あるいは望ましくない)と決めることもできます。代わりに、たとえば「最終品質」列の幅を「時間」列の 3 倍にすると決めることもできます。これも、tabularx下の 2 番目の表に示すように、環境で処理できます。2 番目のtabularx環境は、最初の環境とセットアップ行のみが異なります。最初の環境は次のように定義されます。

\begin{tabularx}{\textwidth}{|*{7}{C|}}

2 番目には、次のようなより複雑な定義があります。

\begin{tabularx}{\textwidth}{|C|*{3}{>{\hsize=1.5\hsize}C|>{\hsize=0.5\hsize}C|}}

へのスイッチと組み合わせることで\footnotesize、このアプローチは目的の形式を実現できるようです。

どちらのアプローチも\resizebox、極小の文字を使用して最終的に生成されるよりもはるかに優れているようです。元のコードの結果を示す 3 番目の表を参照してください。

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

\documentclass[a4paper,headsepline,12pt,toc=index,
               toc=bibliography,ngerman]{scrreprt}
\usepackage{tabularx,graphicx,multirow}
\newcolumntype{C}{>{\centering\arraybackslash}X}
\begin{document}

\begin{table}[htbp]
\renewcommand{\arraystretch}{1.5}
\setlength\tabcolsep{3pt}
\caption{Equal-width columns, \texttt{\string\normalsize}} \label{label-one}
\begin{tabularx}{\textwidth}{|*{7}{C|}}
\hline
\textbf{Method} 
& \multicolumn{2}{>{\hsize=2\hsize}C|}{\bfseries Non-frictional Parallelepiped} 
& \multicolumn{2}{>{\hsize=2\hsize}C|}{\bfseries Non-frictional Knight} 
& \multicolumn{2}{>{\hsize=2\hsize}C|}{\bfseries Frictional Knight} \\ 
\cline{2-7} 
& \multicolumn{2}{>{\hsize=2\hsize}C|}{1880 Experimental Cases} 
& \multicolumn{2}{>{\hsize=2\hsize}C|}{21357 Experimental Cases} 
& \multicolumn{2}{>{\hsize=2\hsize}C|}{21357 Experimental Cases}  \\ 
\hline
Mod.\ new Method
& Final Quality  & Time (s)        
& Final Quality  & Time (s)   
& Final Quality  & Time (s) \\ 
\cline{2-7} 
& 0.200 in 30~samples with pop.\ size 400 & 35.0  
& 0.126 in 20~samples with pop.\ size 200 & 63.8       
& 0.146 in 20~samples with pop.\ size 200 & 368.8 \\ 
\hline
\end{tabularx}

\bigskip
\footnotesize
\caption{Unequal-width columns, \texttt{\string\footnotesize}} \label{label-two}
 \begin{tabularx}{\textwidth}{|C|
   *{3}{>{\hsize=1.5\hsize}C|>{\hsize=0.5\hsize}C|}}
 \hline
 \textbf{Method} 
 & \multicolumn{2}{>{\hsize=2\hsize}C|}{\bfseries Non-frictional Parallelepiped} 
 & \multicolumn{2}{>{\hsize=2\hsize}C|}{\bfseries Non-frictional Knight} 
 & \multicolumn{2}{>{\hsize=2\hsize}C|}{\bfseries Frictional Knight} \\ 
 \cline{2-7} 
 & \multicolumn{2}{>{\hsize=2\hsize}C|}{1880 Experimental Cases} 
 & \multicolumn{2}{>{\hsize=2\hsize}C|}{21357 Experimental Cases} 
 & \multicolumn{2}{>{\hsize=2\hsize}C|}{21357 Experimental Cases}  \\ 
 \hline
 Mod.\ new Method
 & Final Quality  & Time (s)        
 & Final Quality  & Time (s)   
 & Final Quality  & Time (s) \\ 
 \cline{2-7} 
 & 0.200 in 30~samples with pop.\ size 400 & 35.0  
 & 0.126 in 20~samples with pop.\ size 200 & 63.8       
 & 0.146 in 20~samples with pop.\ size 200 & 368.8 \\ 
 \hline
 \end{tabularx}

\bigskip
\normalsize
\renewcommand{\arraystretch}{2}
\caption{Original solution, with \texttt{\string\resizebox}}\label{label-three}
\resizebox{\textwidth}{!}{%
        \begin{tabular}{|c|c|c|c|c|c|c|}
        \hline
        \multirow{2}{*}{\textbf{Method}}
        & \multicolumn{2}{c|}{\textbf{\begin{tabular}[c]{@{}c@{}}Non-frictional  Parallelepiped\end{tabular}}} 
        & \multicolumn{2}{c|}{\textbf{\begin{tabular}[c]{@{}c@{}}Non-frictional  Knight\end{tabular}}} 
        & \multicolumn{2}{c|}{\textbf{\begin{tabular}[c]{@{}c@{}}Frictional  Knight\end{tabular}}} \\ 
        \cline{2-7} 
        & \multicolumn{2}{c|}{1880 Experimental Cases}                                                                    
        & \multicolumn{2}{c|}{21357 Experimental Cases}                                                           
        & \multicolumn{2}{c|}{21357 Experimental Cases}                                                       
        \\ \hline
        \multirow{2}{*}{\begin{tabular}[c]{@{}c@{}}Modified  NEW Method \end{tabular}} 
        & Final Quality & Time (s) 
        & Final Quality & Time (s)   
        & Final Quality & Time (s) \\ 
        \cline{2-7} 
        & \begin{tabular}[c]{@{}c@{}}0.200 in 30 samples  with pop size 400\end{tabular}        & 35.0            
        & \begin{tabular}[c]{@{}c@{}}0.126 in 20 samples  with pop. size 200\end{tabular}    & 63.8       
        & \begin{tabular}[c]{@{}c@{}}0.146 in 20 samples  with pop. size 200\end{tabular}  & 368.8    \\ 
        \hline
        \end{tabular}%
}
\end{table}
\end{document}

関連情報