我有这个 MWE,想将最后一行的 x 水平和垂直居中(数字仅用于调试目的)。我尝试过一种方法
\newlength{\xlength}
\settowidth{\xlength}{x}
并在列类型定义中
>{\centering\arraybackslash}m{\xlength}
但它不起作用。出了什么问题?我该怎么办。MWE:
\documentclass[12pt,a4paper,BCOR5mm]{scrbook}
\usepackage{booktabs}
\usepackage{multirow}
\usepackage{longtable}
\usepackage{tabu}
\usepackage{rotating}
\usepackage{colortbl}
\newcommand\rota[1]{\rotatebox{90}{#1\ }}
\newcommand*\dimension[2]{\multicolumn{#1}{D}{\rota{#2}}}
\newcommand*\charakteristik[1]{\multicolumn{1}{C}{\rota{#1}}}
\begin{document}
%\begin{spacing}{0.8}
\newlength{\sep}
\setlength{\sep}{1.5pt}
\setlength{\tabcolsep}{\sep}
\setlength{\extrarowheight}{5pt}
%/Fonts#Sizing_text
\newcolumntype{O}{>{\small}p{1.6cm}}
\newcolumntype{D}{>{\small}c}
\newcolumntype{C}{>{\scriptsize}c}
\definecolor{Gray}{gray}{0.9}
\newcolumntype{W}{>{\columncolor{white}}C}
\newcolumntype{G}{>{\columncolor{Gray}}C}
\begin{longtabu}{O*{22}{WG}W}
\toprule
& \dimension{6}{Plattform} & \dimension{3}{Multi-User}
& \dimension{2}{Export} & \dimension{2}{Import}
& \dimension{4}{Benutzerführung} & \dimension{2}{Sprachen}
& \dimension{3}{Kollaboration} & \dimension{3}{Kosten}
& \dimension{3}{Support} & \dimension{3}{Registrierung}
& \dimension{2}{Canvas Typen} & \dimension{2}{Custom Canvas}
& \dimension{10}{Finanzübersicht}\\
\cmidrule(r{1.5pt}){1-10}
\cmidrule(l{1.5pt}r{1.5pt}){11-20}
\cmidrule(l{1.5pt}r{1.5pt}){21-30}
\cmidrule(l{1.5pt}r{1.5pt}){31-40}
\cmidrule(l{1.5pt}){41-46}
& \charakteristik{Windows} & \charakteristik{Mac}
& \charakteristik{Linux} & \charakteristik{Webbrowser}
& \charakteristik{iOS} & \charakteristik{Android}
& \charakteristik{keine} & \charakteristik{seriell}
& \charakteristik{parallel}& \charakteristik{Daten}
& \charakteristik{Grafik}& \charakteristik{kein}
& \charakteristik{Daten}& \charakteristik{Daten}
& \charakteristik{Grafik}& \charakteristik{kein}
& \charakteristik{Daten}& \charakteristik{Windows}
& \charakteristik{Mac} & \charakteristik{Linux}
& \charakteristik{Webbrowser} & \charakteristik{iOS}
& \charakteristik{Android}& \charakteristik{keine}
& \charakteristik{seriell} & \charakteristik{parallel}
& \charakteristik{Daten} & \charakteristik{Grafik}
& \charakteristik{kein} & \charakteristik{Daten}
& \charakteristik{Daten} & \charakteristik{Grafik}
& \charakteristik{kein} & \charakteristik{Daten}
& \charakteristik{kein} & \charakteristik{Daten}
& \charakteristik{Daten} & \charakteristik{Grafik}
& \charakteristik{kein} & \charakteristik{Daten}
& \charakteristik{Daten}& \charakteristik{Daten}
& \charakteristik{Daten}& \charakteristik{Daten}
& \charakteristik{Grafik} \\ \midrule
1 & 2 & 3 & 4 & 5 & 6 & 7 & 8 & 9 & 0 & 1 & 2 & 3 & 4 & 5 & 6 & 7 & 8 & 9 & 0 & 1 & 2 & 3 & 4 & 5 & 6 & 7 & 8 & 9 & 0 & 1 & 2 & 3 & 4 & 5 & 6 & 7 & 8 & 9 & 0 & 1 & 2 & 3 & 4 & 5 & 6 \\
Long name that can be word wraped if needed & x & x & x & x & x & x & x & x & x & x & x & x & x & x & x & x & x & x & x & x & x & x & x & x & x & x & x & x & x & x & x & x & x & x & x & x & x & x & x & x & x & x & x & x & x \\
\end{longtabu}
\end{document}
答案1
将第一列定义为m
如下列
\newcolumntype{O}{>{\small}m{1.6cm}}
longtabu
顺便问一下,既然能完成这项工作,为什么还要使用longtable
它呢?此外,它并不tabu
像作者声称的那样支持软件包。
\documentclass[12pt,a4paper,BCOR5mm]{scrbook}
\usepackage{booktabs}
\usepackage{multirow}
\usepackage{longtable}
\usepackage{tabu}
\usepackage{rotating}
\usepackage{colortbl}
\newcommand\rota[1]{\rotatebox{90}{#1\ }}
\newcommand*\dimension[2]{\multicolumn{#1}{D}{\rota{#2}}}
\newcommand*\charakteristik[1]{\multicolumn{1}{C}{\rota{#1}}}
\begin{document}
%\begin{spacing}{0.8}
\newlength{\sep}
\setlength{\sep}{1.5pt}
\setlength{\tabcolsep}{\sep}
\setlength{\extrarowheight}{5pt}
%/Fonts#Sizing_text
\newcolumntype{O}{>{\small}m{1.6cm}}
\newcolumntype{D}{>{\small}c}
\newcolumntype{C}{>{\scriptsize}c}
\definecolor{Gray}{gray}{0.9}
\newcolumntype{W}{>{\columncolor{white}}C}
\newcolumntype{G}{>{\columncolor{Gray}}C}
\begin{longtabu}{O*{22}{WG}W}
\toprule
& \dimension{6}{Plattform} & \dimension{3}{Multi-User}
& \dimension{2}{Export} & \dimension{2}{Import}
& \dimension{4}{Benutzerführung} & \dimension{2}{Sprachen}
& \dimension{3}{Kollaboration} & \dimension{3}{Kosten}
& \dimension{3}{Support} & \dimension{3}{Registrierung}
& \dimension{2}{Canvas Typen} & \dimension{2}{Custom Canvas}
& \dimension{10}{Finanzübersicht}\\
\cmidrule(r{1.5pt}){1-10}
\cmidrule(l{1.5pt}r{1.5pt}){11-20}
\cmidrule(l{1.5pt}r{1.5pt}){21-30}
\cmidrule(l{1.5pt}r{1.5pt}){31-40}
\cmidrule(l{1.5pt}){41-46}
& \charakteristik{Windows} & \charakteristik{Mac}
& \charakteristik{Linux} & \charakteristik{Webbrowser}
& \charakteristik{iOS} & \charakteristik{Android}
& \charakteristik{keine} & \charakteristik{seriell}
& \charakteristik{parallel}& \charakteristik{Daten}
& \charakteristik{Grafik}& \charakteristik{kein}
& \charakteristik{Daten}& \charakteristik{Daten}
& \charakteristik{Grafik}& \charakteristik{kein}
& \charakteristik{Daten}& \charakteristik{Windows}
& \charakteristik{Mac} & \charakteristik{Linux}
& \charakteristik{Webbrowser} & \charakteristik{iOS}
& \charakteristik{Android}& \charakteristik{keine}
& \charakteristik{seriell} & \charakteristik{parallel}
& \charakteristik{Daten} & \charakteristik{Grafik}
& \charakteristik{kein} & \charakteristik{Daten}
& \charakteristik{Daten} & \charakteristik{Grafik}
& \charakteristik{kein} & \charakteristik{Daten}
& \charakteristik{kein} & \charakteristik{Daten}
& \charakteristik{Daten} & \charakteristik{Grafik}
& \charakteristik{kein} & \charakteristik{Daten}
& \charakteristik{Daten}& \charakteristik{Daten}
& \charakteristik{Daten}& \charakteristik{Daten}
& \charakteristik{Grafik} \\ \midrule
1 & 2 & 3 & 4 & 5 & 6 & 7 & 8 & 9 & 0 & 1 & 2 & 3 & 4 & 5 & 6 & 7 & 8 & 9 & 0 & 1 & 2 & 3 & 4 & 5 & 6 & 7 & 8 & 9 & 0 & 1 & 2 & 3 & 4 & 5 & 6 & 7 & 8 & 9 & 0 & 1 & 2 & 3 & 4 & 5 & 6 \\
Long name that can be word wraped if needed & x & x & x & x & x & x & x & x & x & x & x & x & x & x & x & x & x & x & x & x & x & x & x & x & x & x & x & x & x & x & x & x & x & x & x & x & x & x & x & x & x & x & x & x & x \\
\end{longtabu}
\end{document}