ConTeXt TABLEs,如何使用 \setupTABLE 自动调整表格大小以适应文本

ConTeXt TABLEs,如何使用 \setupTABLE 自动调整表格大小以适应文本

当我输入类似

\bTABLE
\bTR\bTD abc\eTD\bTD abcdefg\eTD\eTR
\bTR\bTD 123456789\eTD\bTD 1234\eTD\eTR
\eTABLE

在 ConTeXt 中,它会自动设置列宽以适合其中包含的文本,如下所示:

我想要的是

这正是我想要看到的输出。我遇到的问题是,在某些文档中,我在其他地方使用 \setupTABLE 命令手动设置表格宽度。完成此操作后,我不知道如何恢复后退默认行为。我的意思是:

我不想要什么

实现我想要的效果的正确方法是什么?

答案1

处理这个问题的标准方法是使用setups

\startsetups name
   \setupTABLE[...][...]
    ....
\stopsetups

其中name可以是任意字符串。

然后你可以使用

\bTABLE[setups=name]
 ....
\eTABLE

并且上下文将应用该设置name。您甚至可以定义多个设置并使用

\bTABLE[setups={one, two}]
 ....
\eTABLE

ETC。

答案2

\setupTABLE使用后可保持效果\bTABLE

\starttext

\bTABLE
\bTR\bTD abc\eTD\bTD abcdefg\eTD\eTR
\bTR\bTD 123456789\eTD\bTD 1234\eTD\eTR
\eTABLE



\bTABLE
\setupTABLE[c][each][width=1in]
\bTR\bTD 1inch\eTD\eTR
\eTABLE


\bTABLE
\bTR\bTD This\eTD\bTD more\eTD\eTR
\bTR\bTD like\eTD\bTD it\eTD\eTR
\eTABLE

\stoptext

在此处输入图片描述

相关内容