将新列类型置于自定义字符的中心

将新列类型置于自定义字符的中心

我在这个问题上得到了很大的帮助: 表格嵌套的列宽度基于统一的父级宽度,而不是统一的子级宽度

我想在数学模式中将列居中在字符上。我知道这通常是在等于或者小数点

我有一个像这样定义的 newcolumntype:

\newcolumntype{C}[1]{>{\centering\arraybackslash\hsize=#1\hsize}X}

我该如何修改此列类型,以便列的内容居中$=$$\rightarrow$?以某种方式合并类似的东西c@{$\rightarrow$}

我尝试过这个:

\newcolumntype{C2}[1]{>{\centering\arraybackslash\hsize=#1\hsize}X@{$\rightarrow$}}

但我使用它的结果是

! Package array Error:  Illegal pream-token (2.3333): `c' used.

答案1

您可以使用dcolumn包和列,例如D{>}{\rightarrow}{-1}

在此处输入图片描述

\documentclass{article}

\usepackage{dcolumn,tabularx}

\newcolumntype{C}{D>{\;\rightarrow\;}{3.3}}

\begin{document}

\begin{tabularx}{.5\textwidth}{XCX}
  xxx & 1 > 2 & hh\\
  x & 1 > 222 & hhhh\\
  xxx & 123 > 2 & hh\\
\end{tabularx}
\end{document}

相关内容