如何格式化表格环境中给定列中的所有单元格

如何格式化表格环境中给定列中的所有单元格

假设我有一个命令\newcommand{\mycommand}[1]{...}。具体如下:圈出文字的好方法

现在我想做这样的事情:

\begin{tabularx}{\textwidth}{X|c}
Some long piece of text & \mycommand{Something}\\
Some long piece of text & \mycommand{Something}\\
Some long piece of text & \mycommand{Something}
\end{tabularx}

我如何才能做到这一点而不必\mycommand{...}对该列中的所有单元格进行输入。

我已经找到了>{...}字体样式和对齐方式,但我不知道是否可以完成这样的事情。

编辑:我还想知道是否\mycommand可以有多个参数。

答案1

下面是使用该命令的演示\Circled(来自circledsteps),使用collcell包:T,定义了一个新的C列类型,它收集该列每个单元格的内容,并对\Circled这些内容执行宏:

\documentclass[a4paper]{article}

\usepackage{tabularx}
\usepackage{collcell}
\usepackage{caption}
\captionsetup{font = footnotesize}
\usepackage{circledsteps} 
\newcolumntype{C}{>{\collectcell\Circled}c<{\endcollectcell}}

\begin{document}
\setlength{\extrarowheight}{3pt}

\begin{tabularx}{\textwidth}{X|C}
Some long piece of text & Something \\
Some very long piece of text & Something \\
Some still quite longer piece of text & Something
\end{tabularx}

\end{document} 

在此处输入图片描述

相关内容