表格中的垂直对齐

表格中的垂直对齐

我正在使用 LaTeX 制作表格,但文本的垂直对齐存在问题。当我使用 时\hline,文本会越过线。

以下是代码:

\begin{tabular}{lcccc}
\hline\hline
 & \textbf{$d_{(O_{1}-Zn/Mg)}(\SI{}{\angstrom})$} 
 & \textbf{$d_{(O_{2}-Zn/Mg)}(\SI{}{\angstrom})$} 
 & \textbf{$d_{(O_{3}-Zn/Mg)}(\SI{}{\angstrom})$} 
 & \textbf{$d_{(O_{\bot}-Zn/Mg)}(\SI{}{\angstrom})$} \\[1mm]
\hline 
\textbf{Pure HB-NWs} &  &  &  &   \\
\hline\hline
\end{tabular}

此外,我还附上了不理想的结果以阐明我的观点。请告诉我如何解决这个问题。

在此处输入图片描述

答案1

您的表格存在一些问题:

  • 你不应该使用\hline。相反,\...rule使用booktabs包裹。
  • 加上\textbf数学表达式没有效果;如果您想要粗体数学,请使用\mtathbf
  • 如果您\ce使用mhchem包在排版化学元素时,您会得到正确的输出。
  • 这里,使用\unit{<unit>}而不是\SI{<number>}{<unit>}
  • 比如说,下标(O_{1} - \ce{Zn}/\ce{Mg})(在我编辑之后)看起来很奇怪。这到底是什么意思?(这取决于应该如何排版。)

以下是我排版表格的方式:

\documentclass{article}

\usepackage[margin = 3cm]{geometry} % to avoid `overfull \hbox'
\usepackage[version = 4]{mhchem}
\usepackage{booktabs}
\usepackage{siunitx}

\begin{document}

\begin{tabular}{l *{4}{c}}
  \toprule
    & $d_{(O_{1} - \ce{Zn}/\ce{Mg})}(\unit{\angstrom})$
    & $d_{(O_{2} - \ce{Zn}/\ce{Mg})}(\unit{\angstrom})$
    & $d_{(O_{3} - \ce{Zn}/\ce{Mg})}(\unit{\angstrom})$
    & $d_{(O_{\bot} - \ce{Zn}/\ce{Mg})}(\unit{\angstrom})$ \\
  \midrule
    \textbf{Pure HB-NWs} & & & & \\
  \bottomrule
\end{tabular}

\end{document}

输出1

或者可能

\documentclass{article}

\usepackage[margin = 4cm]{geometry} % to avoid `overfull \hbox'
\usepackage[version = 3]{mhchem}
\usepackage{booktabs}
\usepackage{siunitx}

\begin{document}

\begin{tabular}{l *{4}{c}}
  \toprule
     & $d_{(O_{1} - \ce{Zn}/\ce{Mg})}$
     & $d_{(O_{2} - \ce{Zn}/\ce{Mg})}$
     & $d_{(O_{3} - \ce{Zn}/\ce{Mg})}$
     & $d_{(O_{\bot} - \ce{Zn}/\ce{Mg})}$ \\[0.5ex]
     & \unit{\angstrom}
     & \unit{\angstrom}
     & \unit{\angstrom}
     & \unit{\angstrom} \\
  \midrule
    \textbf{Pure HB-NWs} & & & & \\
  \bottomrule
\end{tabular}

\end{document}

输出2

PS TeXstudio 是编辑器;这与您的表格无关。

答案2

该包booktabs会更改行与表单元格之间的间距。它使用命令\toprule\bottomrule来获得较粗的线条(您使用了双线\hline)以及midrule表格内部的线条。垂直线在书本标签中存在问题,此解决方案会稍微改变您的布局,但也许会有所帮助:

\documentclass{article}

\usepackage{siunitx}
\usepackage{booktabs}

\begin{document}

\begin{tabular}{lcccc}
\toprule
 & \textbf{$d_{(O_{1}-Zn/Mg)}(\SI{}{\angstrom})$} 
 & \textbf{$d_{(O_{2}-Zn/Mg)}(\SI{}{\angstrom})$} 
 & \textbf{$d_{(O_{3}-Zn/Mg)}(\SI{}{\angstrom})$} 
 & \textbf{$d_{(O_{\bot}-Zn/Mg)}(\SI{}{\angstrom})$} \\[1mm]
\midrule
\textbf{Pure HB-NWs} &  &  &  &   \\
\bottomrule
\end{tabular}

\end{document}

在此处输入图片描述

答案3

您可以extrarowheight借助array包来进行设置。

\documentclass{article}
\usepackage{siunitx}
\usepackage{array}
\setlength{\extrarowheight}{2pt} %% adjust suitably
\begin{document}
  \begin{tabular}{lcccc}
\hline\hline
 & \textbf{$d_{(O_{1}-Zn/Mg)}(\SI{}{\angstrom})$}
 & \textbf{$d_{(O_{2}-Zn/Mg)}(\SI{}{\angstrom})$}
 & \textbf{$d_{(O_{3}-Zn/Mg)}(\SI{}{\angstrom})$}
 & \textbf{$d_{(O_{\bot}-Zn/Mg)}(\SI{}{\angstrom})$} \\[1mm]
\hline
\textbf{Pure HB-NWs} &  &  &  &   \\
\hline\hline
\end{tabular}
\end{document}

在此处输入图片描述

或者在特定行中添加一条不可见的规则:

\documentclass{article}
\usepackage{siunitx}
\begin{document}
  \begin{tabular}{lcccc}
\hline\hline
\rule{0ex}{3ex}             %%% adjust 3ex suitably.
 & \textbf{$d_{(O_{1}-Zn/Mg)}(\SI{}{\angstrom})$}
 & \textbf{$d_{(O_{2}-Zn/Mg)}(\SI{}{\angstrom})$}
 & \textbf{$d_{(O_{3}-Zn/Mg)}(\SI{}{\angstrom})$}
 & \textbf{$d_{(O_{\bot}-Zn/Mg)}(\SI{}{\angstrom})$} \\[1mm]
\hline
\textbf{Pure HB-NWs} &  &  &  &   \\
\hline\hline
\end{tabular}
\end{document}

相关内容