在多列文本上书写水平线

在多列文本上书写水平线

因此,我尝试编写一个包含一些信息的表格,这是我一生中第一次使用多行和多列。一切都很顺利,直到我决定使用\hline,正如您在代码中看到的那样,其中一条水平线穿过多列并覆盖了我的文本。

有人能告诉我如何防止这种情况发生吗?

\begin{table}[]
\begin{tabular}{|c|c|c|}
\hline
\multicolumn{2}{|c|}{\textbf{Item}}                             & \textbf{CPU33} \\ \hline
\multicolumn{2}{|c|}{Dimensiones}                      & A     \\ \hline
\multicolumn{2}{|c|}{Consumo}                          & B     \\ \hline
\multirow{4}{*}{Ambiente de operación} & Temperatura & C     \\ \hline
                                       & Ruido       & D     \\ \hline
                                       & Vibración   & E     \\ \hline
                                       & Schock      & F     \\ \hline
\end{tabular}
\end{table}

我现在的桌子

答案1

您可以使用 \cline 命令仅在两个单元格中绘制水平线。代码如下:

\documentclass{article}

\usepackage{multirow}
\begin{document}
    \begin{table}
    \begin{tabular}{|c|c|c|}
        \hline
        \multicolumn{2}{|c|}{\textbf{Item}}                             & \textbf{CPU33} \\ \hline
        \multicolumn{2}{|c|}{Dimensiones}                      & A     \\ \hline
        \multicolumn{2}{|c|}{Consumo}                          & B     \\ \hline
        \multirow{4}{*}{Ambiente de operación} & Temperatura & C  \\ \cline{2-3}
        & Ruido       & D     \\\cline{2-3}
        & Vibración   & E     \\ \cline{2-3}
        & Schock      & F     \\ \hline
    \end{tabular}
\end{table}
\end{document}

该表格是 桌子

您也可以参考以下链接如何绘制一条仅跨越部分表格单元格的水平线?

答案2

为了确保水平线不会穿过\multirow单元格,您可以使用\cline而不是\hline。指定您的线应出现在哪些列中。

此外,我还添加了cellspace包,以便在每个单元格的文本上方和下方留出一小段垂直空白。在第三个示例中,我还包含了一个不使用垂直线、不使用包\multirow中水平线的表格booktabs

在此处输入图片描述

\documentclass{article}

\usepackage[column=0]{cellspace}
\setlength{\cellspacetoplimit}{3pt}
\setlength{\cellspacebottomlimit}{\cellspacetoplimit}
\usepackage{multirow}

\usepackage{booktabs} % only used in third example

\begin{document}
\begin{table}
    \begin{tabular}{|0c|0c|0c|}
        \hline
        \multicolumn{2}{|0c|}{\textbf{Item}}                    & \textbf{CPU33} \\ \hline
        \multicolumn{2}{|0c|}{Dimensiones}                      & A              \\ \hline
        \multicolumn{2}{|0c|}{Consumo}                          & B              \\ \hline
        \multirow{4.25}{*}{Ambiente de operación} & Temperatura & C              \\ \cline{2-3}
                                               & Ruido          & D              \\ \cline{2-3}
                                               & Vibración      & E              \\ \cline{2-3}
                                               & Schock         & F              \\ \hline
    \end{tabular}
\end{table}

\begin{table}
    \begin{tabular}{|0c|0c|0c|}
        \hline
        \multicolumn{2}{|0c|}{\textbf{Item}}                    & \textbf{CPU33} \\ \hline
        \multicolumn{2}{|0c|}{Dimensiones}                      & A              \\ \hline
        \multicolumn{2}{|0c|}{Consumo}                          & B              \\ \hline
        \multirow{4.25}{2cm}{Ambiente de operación} & Temperatura & C              \\ \cline{2-3}
                                               & Ruido          & D              \\ \cline{2-3}
                                               & Vibración      & E              \\ \cline{2-3}
                                               & Schock         & F              \\ \hline
    \end{tabular}
\end{table}


\begin{table}
    \begin{tabular}{lc}
        \toprule
        Item                  & CPU33 \\ 
        \midrule
        Dimensiones           & A     \\ 
        Consumo               & B     \\ 
        Ambiente de operación         \\
        \quad Temperatura     & C     \\ 
        \quad Ruido           & D     \\ 
        \quad Vibración       & E     \\ 
        \quad Schock          & F     \\
        \bottomrule 
    \end{tabular}
\end{table}
\end{document}

答案3

{NiceTabular}您可以使用轻松制作该表nicematrix。关键hvlines是绘制块中除外的所有规则(由 创建\Block)。

\documentclass{article}
\usepackage{nicematrix}

\NiceMatrixOptions{cell-space-bottom-limit=3pt,cell-space-top-limit=3pt}

\begin{document}

\begin{table}
\begin{NiceTabular}{lcc}[hvlines]
\Block{1-2}{\textbf{Item}}           &             & \textbf{CPU33} \\ 
\Block{1-2}{Dimensiones}             &             & A              \\ 
\Block{1-2}{Consumo}                 &             & B              \\ 
\Block{4-1}{Ambiente\\ de operación} & Temperatura & C \\ 
                                     & Ruido       & D \\ 
                                     & Vibración   & E \\ 
                                     & Schock      & F \\ 
\end{NiceTabular}
\end{table}

\end{document}

您需要多次编译。

上述代码的输出

相关内容