我正在使用 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}
或者可能
\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}
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}