我正在尝试使用自定义列创建一个表,如下所述这里。由于某种原因,我的表格最后一行最左边的列没有水平居中,我不知道为什么。
以下是我正在使用的代码:
\documentclass[
german,
paper=a4,
oneside,
DIV=15,
12pt,
parskip,
headsepline,
cleardoublepage=empty,
]{scrreprt}
\usepackage[automark, autooneside=false]{scrlayer-scrpage}
\clearpairofpagestyles
\usepackage[latin1]{inputenc}
\usepackage[english,ngerman]{babel}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\parindent 0pt
\usepackage[onehalfspacing]{setspace}
\usepackage[decimalsymbol=comma,
loctolang={DE:ngerman,UK:english},
]{siunitx}
\usepackage{wg_makro}
\usepackage{ wasysym }
\usepackage{caption}
\DeclareCaptionFont{white}{\color{white}}
\DeclareCaptionFormat{listing}{\colorbox[cmyk]{0.43, 0.35, 0.35,0.01}{\parbox{\textwidth}{\hspace{15pt}#1#2#3}}}
\captionsetup[lstlisting]{format=listing,labelfont=white,textfont=white, singlelinecheck=false, margin=0pt, font={bf,footnotesize}}
%***************************************************************
%this is where I defined the new columntypes
\usepackage{array}
\newcolumntype{P}[1]{>{\centering\arraybackslash}p{#1}}
\newcolumntype{M}[1]{>{\centering\arraybackslash}m{#1}}
%***************************************************************
\usepackage{chemmacros}
\begin{document}
\begin{center}
\begin{table}[H]
\begin{tabular}{|M{3cm}|M{2.5cm}|M{2.3cm}|M{2.2cm}|M{2.5cm}|M{3.25cm}|}
\hline
Substrat & Abmessungen & Leitfähigkeit & Orientierung & Dotierung & Brechungsindex \newline $( \lambda = \SI{632,8}{\nano\meter})$ \\ \hline\hline
p-Si & \diameter: \SI{2}{"} \newline H: \SI{1}{\milli\meter} & \SI{0.1}{\ohm\meter} & <100> & Bor-Dotiert & \num{1,5667-i0,016}\\ \hline
n-Si & \diameter: \SI{2}{"} \newline H: \SI{1}{\milli\meter} & \SI{0.1}{\ohm\meter} & <100> & Bor-Dotiert & \num{1,5667-i0,016}\\ \hline
p-Si \newline \ch{SiO2} (\SI{200}{\nano\meter}) & \diameter: \SI{2}{"} \newline H: \SI{1}{\milli\meter} & \SI{0.1}{\ohm\meter} & <100> & Bor-Dotiert & \num{1,5667-i0,016}\\ \hline
\end{tabular}
\caption{Haupteigenschaften der verwendeten Substrate}
\label{tbl:substrate}
\end{table}
\end{center}
\end{document}
这是我得到的结果:
我添加了一条红线,以便人们可以立即看到错误的对齐。
我的问题是:我如何将最后的“p-Si”与上面单元格中的对齐?
答案1
您既不想要\newline
(永远不要在表格中使用它),也不想要\endgraf
。
命令\endgraf
应该绝不直接在文档中使用;在某些涉及宏定义的特殊情况下,它可能很方便。好吧,“从不”可能有点夸张,但这个想法是,如果你似乎需要它在文档中,那么你正在做的事情可能有问题,或者至少是有争议的。
这是一种避免计算列宽和M
列数的方法;调整应该\tabcolsep
在文档最终形式时在最后进行;我只是取超额的数量并将其除以 12(列间距数)。
\documentclass[
paper=a4,
oneside,
DIV=15,
12pt,
parskip,
headsepline,
cleardoublepage=empty,
]{scrreprt}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{wasysym}
\usepackage[onehalfspacing]{setspace}
\usepackage[decimalsymbol=comma,
loctolang={DE:ngerman,UK:english},
]{siunitx}
\usepackage{chemmacros}
\DeclareSIUnit{\inch}{\ensuremath{''}}
\newcommand{\splitcell}[2][c]{\begin{tabular}{@{}#1@{}}#2\end{tabular}}
\newcommand{\orientation}[1]{\ensuremath{\langle#1\rangle}}
\begin{document}
\begin{table}
\centering
\addtolength{\tabcolsep}{-0.74pt}% avoid overfull
\begin{tabular}{|*{6}{c|}}
\hline
Substrat & Abmessungen & Leitfähigkeit & Orientierung & Dotierung &
\splitcell{Brechungsindex \\ $(\lambda = \SI{632,8}{\nano\meter})$} \\
\hline\hline
p-Si & \splitcell[l]{\diameter: \SI{2}{\inch} \\ H: \SI{1}{\milli\meter}} &
\SI{0.1}{\ohm\meter} & \orientation{100} & Bor-Dotiert & \num{1,5667-i0,016}\\
\hline
n-Si & \splitcell[l]{\diameter: \SI{2}{\inch} \\ H: \SI{1}{\milli\meter}} &
\SI{0.1}{\ohm\meter} & \orientation{100} & Bor-Dotiert & \num{1,5667-i0,016}\\
\hline
\splitcell{p-Si \\ \ch{SiO2} (\SI{200}{\nano\meter})}
& \splitcell[l]{\diameter: \SI{2}{\inch} \\ H: \SI{1}{\milli\meter}} &
\SI{0.1}{\ohm\meter} & \orientation{100} & Bor-Dotiert & \num{1,5667-i0,016}\\
\hline
\end{tabular}
\caption{Haupteigenschaften der verwendeten Substrate}
\label{tbl:substrate}
\end{table}
\end{document}
我已删除了构建示例不需要的包。
请注意,即使使用说明符(不要),table
环境也不能进入环境内部。center
[H]
booktabs
与(需要)相同\usepackage{booktabs}
:
\begin{table}
\centering
\addtolength{\tabcolsep}{-0.5pt}% avoid overfull
\begin{tabular}{*{6}{c}}
\toprule
Substrat & Abmessungen & Leitfähigkeit & Orientierung & Dotierung &
\splitcell{Brechungsindex \\ $(\lambda = \SI{632,8}{\nano\meter})$} \\
\midrule
p-Si & \splitcell[l]{\diameter: \SI{2}{\inch} \\ H: \SI{1}{\milli\meter}} &
\SI{0.1}{\ohm\meter} & \orientation{100} & Bor-Dotiert & \num{1,5667-i0,016}\\
\addlinespace
n-Si & \splitcell[l]{\diameter: \SI{2}{\inch} \\ H: \SI{1}{\milli\meter}} &
\SI{0.1}{\ohm\meter} & \orientation{100} & Bor-Dotiert & \num{1,5667-i0,016}\\
\addlinespace
\splitcell{p-Si \\ \ch{SiO2} (\SI{200}{\nano\meter})}
& \splitcell[l]{\diameter: \SI{2}{\inch} \\ H: \SI{1}{\milli\meter}} &
\SI{0.1}{\ohm\meter} & \orientation{100} & Bor-Dotiert & \num{1,5667-i0,016}\\
\bottomrule
\end{tabular}
\caption{Haupteigenschaften der verwendeten Substrate}
\label{tbl:substrate}
\end{table}
答案2
将@Bernhard 的评论转化为答案:
通过替换\newline
,\endgraf
对齐问题得到修复。