代码之家  ›  专栏  ›  技术社区  ›  Andreas Grech

自定义以乳胶格式对齐表格中的文本

  •  7
  • Andreas Grech  · 技术社区  · 16 年前

    基本上,我想在 LaTeX (注意:” 逗号对齐 “第二个单元格中的”)。

    ----------------------------------------
    | Header1 | Header2                    |
    ----------------------------------------
    |    1    | "value 1"      , "value 2" |
    |    2    | "one"          , "two"     |
    |    3    | "abcdefheasal" , "ok"      |
    ----------------------------------------
    

    我把上面的桌子做成 乳胶 如下:

    \begin{tabular}{|c|l|}
      \hline
      Header1 & Header2             \\
      \hline
      1 & ``value 1'' , ``value 2'' \\
      2 & ``one'' , ``two''         \\
      3 & ``abcdefheasal'' , ``ok'' \\
      \hline
    \end{tabular} 
    

    但很明显,该代码生成以下内容(显然没有 逗号对齐 “”:

    -----------------------------------
    | Header1 | Header2               |
    -----------------------------------
    |    1    | "value 1" , "value 2" |
    |    2    | "one" , "two"         |
    |    3    | "abcdefheasal" , "ok" |
    -----------------------------------
    

    把后一张桌子变成我想要的那张最好的方法是什么?即前者

    2 回复  |  直到 9 年前
        1
  •  9
  •   Seth Johnson    16 年前

    作为对Martin B答案的修改,考虑使用 @ 签名以创建列分隔符:

    \begin{tabular}{|c|l@{ , }l|}
      \hline
      Header1 & \multicolumn{2}{l|}{Header2}  \\
      \hline
      1 & ``value 1'' & ``value 2'' \\
      2 & ``one'' & ``two''         \\
      3 & ``abcdefheasal'' & ``ok'' \\
      \hline
    \end{tabular}
    

    还要注意,在 multicolumn 在第一行画垂直线。

        2
  •  2
  •   Martin B    16 年前

    我建议使用三列表,然后合并第二列和第三列的标题,如下所示:

    \begin{tabular}{|c|ll|}
      \hline
      Header1 & \multicolumn{2}{l}{Header2} \\  
      \hline  
      1 & ``value 1''      & , ``value 2''  \\  
      2 & ``one''          & , ``two''      \\  
      3 & ``abcdefheasal'' & , ``ok''       \\  
      \hline
    \end{tabular}