设置 ConTeXt 表格中列之间的距离

设置 ConTeXt 表格中列之间的距离

我需要创建一个简单的块来显示食谱内容。制表似乎是最简单的方法。下面是我的意思的一个例子

\starttext

\def\leaderfill{\leaders\hbox to 0.3em{\hss.\hss}\hfill}

\starttabulate[|p|l|Il|]
    \NC Item 1                  \leaderfill     200 \NC     \NC g   \NR
    \NC Item Item 2             \leaderfill     60  \NC     \NC ml  \NR
    \NC Item Item Item Item 3   \leaderfill     10  \NC     \NC ml  \NR
    \NC Item Item 4             \leaderfill     0   \NC.5   \NC g   \NR
    \NC Item Item 5             \leaderfill     0   \NC.25  \NC g   \NR
    \NC Very very very long name of Item 6          \NC     \NC     \NR
    \NC the rest of the name    \leaderfill 10--15  \NC     \NC pcs.\NR
\stoptabulate

\stoptext

结果如下:

在此处输入图片描述

为了使分数看起来正确,我需要删除第一列和第二列之间的距离(设置零宽度)并将第二列和第三列之间的距离设置为等于空格字符的宽度。

我已经审查了为什么我的表格在 ConTeXt 中超出了页面的边缘?主题,但是,它对我没有帮助。使用o0s0会破坏我的表格:

\starttabulate[o0|p|l|Il|]
    \NC Item 1                  \leaderfill     200 \NC     \NC g   \NR
    \NC Item Item 2             \leaderfill     60  \NC     \NC ml  \NR
    \NC Item Item Item Item 3   \leaderfill     10  \NC     \NC ml  \NR
    \NC Item Item 4             \leaderfill     0   \NC.5   \NC g   \NR
    \NC Item Item 5             \leaderfill     0   \NC.25  \NC g   \NR
    \NC Very very very long name of Item 6          \NC     \NC     \NR
    \NC the rest of the name    \leaderfill 10--15  \NC     \NC pcs.\NR
\stoptabulate

在此处输入图片描述

由于表格可能在各种宽度的父环境中使用,因此不宜对列使用固定宽度。

那么,如何在制表中设置列之间的距离?

答案1

欢迎来到本网站!

您可以使用ij设置列之间的空间,请参阅情境花园

这可能就是您想要的(但请查看上面的链接并使用按键):

\starttabulate[|pj0|i0l|Il|]
     \NC Item 1                  \leaderfill     200 \NC     \NC g   \NR
     \NC Item Item 2             \leaderfill     60  \NC     \NC ml  \NR
     \NC Item Item Item Item 3   \leaderfill     10  \NC     \NC ml  \NR
     \NC Item Item 4             \leaderfill     0   \NC.5   \NC g   \NR
     \NC Item Item 5             \leaderfill     0   \NC.25  \NC g   \NR
     \NC Very very very long name of Item 6          \NC     \NC     \NR
     \NC the rest of the name    \leaderfill 10--15  \NC     \NC pcs.\NR
\stoptabulate

输出变成(我使用 A5 纸来获得稍微紧凑一点的页面):

桌子

人们可以考虑使用单位模块(或者至少是罗马数字)作为单位。

相关内容