我需要创建一个简单的块来显示食谱内容。制表似乎是最简单的方法。下面是我的意思的一个例子
\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 中超出了页面的边缘?主题,但是,它对我没有帮助。使用o0
和s0
会破坏我的表格:
\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
欢迎来到本网站!
您可以使用i
和j
设置列之间的空间,请参阅情境花园。
这可能就是您想要的(但请查看上面的链接并使用按键):
\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 纸来获得稍微紧凑一点的页面):
人们可以考虑使用单位模块(或者至少是罗马数字)作为单位。