使用纯 TeX,如何使下表中的第 2 列占据剩余空间,.5\hsize
同时保留其他列的属性以使其具有依赖于其内容的可变宽度?
\offinterlineskip\tabskip=0pt
\halign to.5\hsize{
\vrule#\strut&
\hfil\enskip#\enskip&
\vrule#&
\enskip#\enskip\hfil&
\vrule#&
\hfil\enskip#\enskip&
\vrule#
\cr\noalign{\hrule}
&\omit\hfil\enskip\bf ID\enskip\hfil&
&\omit\hfil\enskip\bf Description\enskip\hfil&
&\omit\hfil\enskip\bf Quantity\enskip\hfil&
\cr\noalign{\hrule}
&1&
&Blah-blah-blah&
&100~pcs&
\cr\noalign{\hrule}
&100&
&Blah-blah&
&10~000~pcs&
\cr\noalign{\hrule}
&10~000&
&Blah&
&100~000~000~pcs&
\cr\noalign{\hrule}}
\end
答案1
这里的技巧是使用制表符跳过粘连,这样表格就会拉伸,但使用跨越该粘连的单元格作为标题,这样您就可以创建一个正确宽度的框来使标题居中(这意味着您必须手动将规则放回原位)
\offinterlineskip\tabskip=0pt
\halign to.5\hsize{
\vrule#\strut&
\hfil\enskip#\enskip&
\vrule#&
\enskip#\enskip\hfil\tabskip0pt plus 1fil&
\vrule#\tabskip0pt&
\hfil\enskip#\enskip&
\vrule#
\cr\noalign{\hrule}
&\omit\hfil\enskip\bf ID\enskip\hfil&
&\omit\span\omit\hfil\enskip\bf Description\enskip\hfil\vrule
&\omit\hfil\enskip\bf Quantity\enskip\hfil&
\cr\noalign{\hrule}
&1&
&Blah-blah-blah&
&100~pcs&
\cr\noalign{\hrule}
&100&
&Blah-blah&
&10~000~pcs&
\cr\noalign{\hrule}
&10~000&
&Blah&
&100~000~000~pcs&
\cr\noalign{\hrule}}
\end