TabularX 垂直对齐

TabularX 垂直对齐

由于 enumiten 包(因此 leftmargin=*)在自定义环境中不起作用,我尝试了一些小技巧,将项目放在如下表格中(不要问...):

  \documentclass[fleqn,10pt,twocolumn]{article} % Document font size and equations 
  \usepackage{tabularx}
  \renewcommand\tabularxcolumn[1]{m{#1}}
  \newcommand{\localtextbulletone}{{\raisebox{.45ex}{\rule{.6ex}{.6ex}}}}

  \newenvironment{parameters}
      {Parameters:\\
       \tabularx{\linewidth}{>{\raggedright\arraybackslash}p{0.3cm}X@{}}    }
      {\endtabularx}

      \newcommand{\parameter}[2] %Name, Description
  {\localtextbulletone & #1: #2\\}

  \begin{document}
  \begin{parameters}
  \parameter{Test}{This is a long text to illustrate the alignment of the item... 
  blablabla long text long text long text long text long text long text long text long 
  text long text long text}
  \end{parameters}

\end{document}

对于文档中的其他表格,我需要将 tabularxcolumn 设置为“m”而不是“p”。在这种情况下,我想将其重新设置为 p,但仅限于此特定环境,这样项目符号就会顶部对齐,而不是居中。

\renewcommand\tabularxcolumn[1]{p{#1}}如果我尝试在环境中进行模拟,LaTeX 不会满意。我如何才能针对此环境重置 tabularxcolumn?

提前谢谢了

答案1

只需将该行放在其周围元素的范围\renewcommand之前即可。\tabularxparameters

 \newenvironment{parameters}
      {Parameters:\\
       \renewcommand\tabularxcolumn[1]{m{##1}}%
       \tabularx{\linewidth}{>{\raggedright\arraybackslash}p{0.3cm}X@{}}    }
      {\endtabularx}

相关内容