是否可以将不平衡的括号(“{”和“}”)重定向到表格列?

是否可以将不平衡的括号(“{”和“}”)重定向到表格列?

这个问题是对我上一个问题

是否可以使用管道在单元格内容的两侧打开和关闭括号?更具体地说,我想要定义以下列><

\newcolumntype{P}{>{\leavevmode\kern-\tabcolsep\bfseries\parbox[t]{\hsize}{}X<{}}}

我想要一种可以自动包含单元格内容的列类型\parbox

附上一份简短的 MNWE:

\documentclass[table]{article}
\usepackage{lmodern, microtype, xcolor, tabularx, tabulary}

\begin{document}

\begin{tabularx}{0.5\columnwidth}{>{\raggedright\arraybackslash\leavevmode\kern-\tabcolsep\parbox[t]{\hsize}{ }X<{}}XX<{\leavevmode\kern-\tabcolsep\raggedleft\arraybackslash}}

\rowcolor{lightgray}All this testing is not so funny&test&test\\\hline
testing, testing and even more testing &test&test\\
\rowcolor{lightgray}I want to write a noce table in a simple way&test&test\\
\end{tabularx}

\end{document}

答案1

跨越括号>{}<{}似乎比预期的要难;我想不出使用显式括号标记的方法。这里有一个使用 TeX 分隔参数的替代解决方案。\parbox我们不直接使用,而是定义一个包装它的辅助宏\parboxx ... \endparboxx。然后在新的列类型中使用此宏P

\documentclass[table]{article}
\usepackage{lmodern, microtype, xcolor, tabularx, tabulary}

\begin{document}

\def\parboxx#1\endparboxx{\parbox[t]{\hsize}{\raggedright#1}}

\newcolumntype{P}{>{\leavevmode\kern-\tabcolsep\bfseries\parboxx}X<{\endparboxx}}

\begin{tabularx}{0.5\columnwidth}{PXX<{\leavevmode\kern-\tabcolsep\raggedleft\arraybackslash}}

\rowcolor{lightgray}All this testing is not so funny&test&test\\\hline
testing, testing and even more testing &test&test\\
\rowcolor{lightgray}I want to write a noce table in a simple way&test&test\\
\end{tabularx}

\end{document}

输出

在此处输入图片描述

相关内容