答案1
因为它只是一个原型,我知道两种方法可以用最少的努力来完成你要求的事情。
(1)使用 excel 构建表格原型,并使用插件 Excel2LaTeX 将其导出为 LaTeX:
https://ctan.org/tex-archive/support/excel2latex?lang=en
我唯一的输入就是更改行\begin{tabular}{|c|c|c|c|c|}
以扩展列并添加两个包。
(2)第二个例子是使用包nicematrix
。
代码更加简洁,因为它提供了\Block
定义单元格(4 个单元格)的multirow
命令multicolumn
,还提供了hvlines
绘制所有线条的指令(同时尊重块),以及垂直扩展所有单元格的命令。
我唯一输入的是搜索并删除所有\cline
s 和\bigstrut
s 并将 s 更改\multirow
为\Block
包装手册展示了许多可供学习和测试的示例。
\documentclass[12pt,a4paper]{article}
\usepackage{bigstrut} % for the first table
\usepackage{multirow}% for the first table
\usepackage{nicematrix} % the second table only needs the package
\begin{document}
\newcolumntype{L}[1]{>{\centering\arraybackslash}p{#1}} % expand & center column
\section{Output from Excel2LaTeX}
% Table generated by Excel2LaTeX from sheet 'Sheet1'
%\begin{tabular}{|c|c|c|c|c|} % original output from from Excel2LaTeX
\begin{tabular}{|L{0.1\textwidth}|L{0.18\textwidth}|L{0.18\textwidth}|L{0.15\textwidth}|L{0.2\textwidth}|} % set columns widths
\hline
F & S & T & F & F \bigstrut\\
\hline
1 & \multirow{10}[20]{*}{19} & 23 & 40 & 58 \bigstrut\\
\cline{1-1}\cline{3-5}2 & & 24 & 41 & 59 \bigstrut\\
\cline{1-1}\cline{3-5}3 & & 25 & 42 & 60 \bigstrut\\
\cline{1-1}\cline{3-5}4 & & 26 & 43 & 61 \bigstrut\\
\cline{1-1}\cline{3-5}5 & & 27 & 44 & 62 \bigstrut\\
\cline{1-1}\cline{3-5}6 & & 28 & 45 & 63 \bigstrut\\
\cline{1-1}\cline{3-5}7 & & 29 & 46 & 64 \bigstrut\\
\cline{1-1}\cline{3-5}8 & & 30 & 47 & 65 \bigstrut\\
\cline{1-1}\cline{3-5}9 & & 31 & 48 & 66 \bigstrut\\
\cline{1-1}\cline{3-5}10 & & 32 & 49 & 67 \bigstrut\\
\hline
11 & \multirow{3}[6]{*}{20} & 33 & 50 & 68 \bigstrut\\
\cline{1-1}\cline{3-5}12 & & 34 & 51 & 69 \bigstrut\\
\cline{1-1}\cline{3-5}13 & & 35 & 52 & 70 \bigstrut\\
\hline
14 & \multirow{3}[6]{*}{21} & 36 & 53 & 71 \bigstrut\\
\cline{1-1}\cline{3-5}15 & & 37 & 54 & 72 \bigstrut\\
\cline{1-1}\cline{3-5}16 & & 38 & 55 & 73 \bigstrut\\
\hline
17 & \multirow{2}[4]{*}{22} & 39 & 56 & 74 \bigstrut\\
\cline{1-1}\cline{3-5}18 & & 40 & 57 & 75 \bigstrut\\
\hline
\end{tabular}%
\newpage
\section{Package nicematrix}
\begin{NiceTabular}{L{0.1\textwidth}L{0.18\textwidth}L{0.18\textwidth}L{0.15\textwidth}L{0.2\textwidth}}[% set columns widths
cell-space-top-limit = 5pt,cell-space-bottom-limit = 5pt, % expands all cell
hvlines % draw all lines
]
F & S & T & F & F \\
1 & \Block{10-1}{19}& 23 & 40 & 58 \\
2 & & 24 & 41 & 59 \\
3 & & 25 & 42 & 60 \\
4 & & 26 & 43 & 61 \\
5 & & 27 & 44 & 62 \\
6 & & 28 & 45 & 63 \\
7 & & 29 & 46 & 64 \\
8 & & 30 & 47 & 65 \\
9 & & 31 & 48 & 66 \\
10 & & 32 & 49 & 67 \\
11 & \Block{3-1}{20} & 33 & 50 & 68 \\
12 & & 34 & 51 & 69 \\
13 & & 35 & 52 & 70 \\
14 & \Block{3-1}{21} & 36 & 53 & 71 \\
15 & & 37 & 54 & 72 \\
16 & & 38 & 55 & 73 \\
17 & \Block{ 2-1}{22}& 39 & 56 & 74 \\
18 & & 40 & 57 & 75 \\
\end{NiceTabular}
\end{document}