![Tabularx 无法将某些列居中](https://linux22.com/image/255813/Tabularx%20%E6%97%A0%E6%B3%95%E5%B0%86%E6%9F%90%E4%BA%9B%E5%88%97%E5%B1%85%E4%B8%AD.png)
我正在尝试使用 tabularx 环境创建时间表,但找不到将所有列居中的方法。
使用此代码:
\documentclass[11pt,oneside, landscape]{article}
\usepackage[utf8]{inputenc}
\usepackage{geometry}
\geometry{a4paper}
\usepackage[osf]{mathpazo}
\linespread{1.05}\selectfont
\usepackage{graphicx}
\usepackage[dvipsnames]{xcolor}
\usepackage{booktabs}
\usepackage{array}
\usepackage{tabularx}
\usepackage{fancyhdr}
\pagestyle{empty}
\newcommand{\tit}[1]{\fontsize{15}{17}\color{darkgray}\usefont{T1}{pplj}{b}{it}\selectfont #1}
\begin{document}
\begin{center}
\renewcommand{\arraystretch}{1.5}
\begin{tabularx}{19cm}{r >{\centering}X >{\centering}X >{\centering}X >{\centering}X X}
& \tit{Lun} & \tit{Mar} & \tit{Mer} & \tit{Gio} & \tit{Ven} \\
\toprule
\color{gray}9-11 $||$ & & Laboratorio III & & Metodi mat. per la fisica & Laboratorio III \\ \midrule
\color{gray}11-13 $||$& Meccanica Quantistica & Metodi mat. per la fisica & & Meccanica Quantistica & Fisica dell'informazione \\ \midrule
\midrule
\color{gray}15-17 $||$ & & Fisica dell'informazione & Laboratorio III & & \\
\bottomrule
\end{tabularx}
\end{center}
\end{document}
我明白了
最后一列不居中。如果我尝试更改
\begin{tabularx}{19cm}{r >{\centering}X >{\centering}X >{\centering}X >{\centering}X X}
和
\begin{tabularx}{19cm}{r >{\centering}X >{\centering}X >{\centering}X >{\centering}X {\centering}X}
我明白
! Misplaced \noalign.
\toprule ->\noalign
{\ifnum 0=`}\fi \@aboverulesep =\abovetopsep \global \@b...
l.39 \end{tabularx}
答案1
包array
和包的tabularx
重新定义\\
方式略有不同。我指的是tabularx-无法将某些列居中以获得更深入的解释。
定义最后一列时,必须在-command\arraybackslash
后面添加一个\centering
,IE:
>{\centering\arraybackslash}X
您的表格序言将是:
\begin{tabularx}{19cm}{r >{\centering}X >{\centering}X%
>{\centering}X >{\centering}X >{\centering\arraybackslash}X}
或者你可以使用禁忌:
\documentclass[11pt,oneside, landscape]{article}
\usepackage[utf8]{inputenc}
\usepackage{geometry}
\geometry{a4paper}
\usepackage[osf]{mathpazo}
\linespread{1.05}\selectfont
\usepackage{graphicx,tabu}
\usepackage[dvipsnames]{xcolor}
\usepackage{booktabs}
\usepackage{array}
\usepackage{tabularx}
\usepackage{fancyhdr}
\pagestyle{empty}
\newcommand{\tit}[1]{\fontsize{15}{17}\color{darkgray}\usefont{T1}{pplj}{b}{it}\selectfont #1}
\begin{document}
\tabulinesep=4pt
\begin{tabu}to 19cm{r X[c] X[c] X[c] X[c] X[c]}
\rowfont{\tit} & Lun & Mar & Mer & Gio & Ven \strut\\
\toprule
\color{gray}9-11 $||$ & & Laboratorio III & & Metodi mat. per la fisica & Laboratorio III \\ \midrule
\color{gray}11-13 $||$& Meccanica Quantistica & Metodi mat. per la fisica & & Meccanica Quantistica & Fisica dell'informazione \\\midrule
\midrule
\color{gray}15-17 $||$ & & Fisica dell'informazione & Laboratorio III & & \\
\bottomrule
\end{tabu}
\end{document}
MWE 具有tabu
:
答案2
在序言中定义新的列类型,例如:
\newcolumntype{C}{>{\centering\arraybackslash}X}
然后将 >{\centering}X 和 >{\centering\arraybackslash}X 用于列类型 C。