![使用数组制作表格](https://linux22.com/image/405843/%E4%BD%BF%E7%94%A8%E6%95%B0%E7%BB%84%E5%88%B6%E4%BD%9C%E8%A1%A8%E6%A0%BC.png)
这和我之前的问题类似,但我不太清楚事情的顺序。以下是我想使用的代码:
\documentclass{article}
\usepackage{multirow,array}
\usepackage{arydshln,bigstrut}
\begin{document}
\begin{array}{|>{\centering\bigstrut$}p{3cm}<{$}|>{\centering$}p{3cm}<{$}|c|}
\hline
0 & \bar 0_n & \bar 0_{(m+1)} \\
\hline
d & \bar c &\multirow{-4}{*}{$I_{(m+1)}$} \\
\cdashline{1-2}
A & & b \\
& & \\
\hline
\end{array}
\]
\end{document}
现在的情况是:
它应该是什么样子的:
我想了解如何设置。我需要制作几个这样的表格,但例如,有时 A 框位于顶部、中部底部或右上方。bigstrut
当第一列需要一直移动到右侧(用于调整大小)时,是否需要更改。您何时使用&&
?multirow
在正确的位置吗?
答案1
\documentclass{article}
\usepackage{bm}
\usepackage{array, arydshln, multirow}
\begin{document}
\[
\renewcommand\arraystretch{1.3}
\begin{array}{|>{\bm}c| *{2}{>{\centering\arraybackslash\bm$}p{24mm}<{$}|} }
\hline
0 & \hat{0}_n & \hat{0}_{(m+1)} \\
\hline
d & \hat c & \\
\cdashline{1-2}
& & \\
\bar{b} & A & \\
& & \multirow{-4.2}{*}{\centering
${I}_{(m+1)}$} \\
\hline
\end{array}
\]
\end{document}
答案2
这是实现相同目的的另一种方法,使用幻像高度强制行具有一定高度,并使用固定宽度列来设置列宽。
此外,嵌套数组可确保垂直对齐稳定,即使您向嵌套数组添加行,或以其他方式更改其高度。例如,如果您希望最后一行更高,只需在命令中将 1.75 厘米更改为 2 厘米\DD
,最后一个单元格的对齐方式(公式会自动调整)。
\documentclass{article}
\usepackage{array}
\usepackage{arydshln}
\def\DD{\vphantom{\parbox[c][1.75cm]{10pt}{-}}}
\def\DS{\vphantom{\parbox[c][0.75cm]{10pt}{-}}}
\setlength{\extrarowheight}{3pt}
\begin{document}
\[ \begin{array}{|c|c|>{$}wc{\dimexpr(2cm+2\tabcolsep+\arrayrulewidth)}<{$}|}
\hline
\DS 0 & \bar 0_n & \bar 0_{(m+1)} \\
\hline
\begin{array}{c}
\DS d \\
\cdashline{1-1}
\DD \bar b \\
\end{array} &
\begin{array}{>{$}wc{2cm}<{$}}
\DS \hat c \\
\cdashline{1-1}
\DD A \\
\end{array} &
I_{(m+1)} \\
\hline
\end{array}
\]
\end{document}