假设我有一个命令\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}