禁忌和列之间的空间

禁忌和列之间的空间

我在 tabu 环境中遇到了列宽问题。我设置了表格和列的尺寸。第一列应具有相同的宽度 = 5cm,第一和第二个表格应具有相同的宽度 = 19cm。但图像上有一个明显的偏移 = 紫色矩形。我该如何修复它?我需要定义表格的总宽度和列的宽度。但我不知道该怎么做:) 所以请帮帮我

\documentclass[article, 12pt, oneside]{memoir}
\setstocksize{297mm}{210mm}
\settrimmedsize{297mm}{210mm}{*}
\settrims{0mm}{0mm}
\setlrmarginsandblock{10mm}{*}{1}
\setulmarginsandblock{20mm}{*}{1}
\checkandfixthelayout
\usepackage{polyglossia}
\usepackage{microtype}
\usepackage{fontspec}
\defaultfontfeatures{Ligatures=TeX}
\setmainfont{TeX Gyre Schola}
\usepackage{tabu}
\begin{document}
\begin{center}
    \begin{tabu} to 19cm {|X[5cm,p,l]|X[11cm,p,l]X[3cm,p,r]|}
        \multicolumn{3}{l}{ \textit{ \textls[100]{bla bla} } } \\
        \toprule
        bla bla                     & bla bla           & bla \\
        bla bla                     & bla bla           & bla \\
        bla bla                     & bla bla           & bla \\
        bla bla                     & bla bla           & bla \\
        bla bla                     & bla bla           & bla \\

    \end{tabu}
    \begin{tabu} to 19cm {|X[5cm,p,l]|X[14cm,p,l]|}
        \addlinespace[1cm]
        \multicolumn{2}{l}{ \textit{ \textls[100]{bla bla} } } \\
        \toprule
        bla bla & bla bla bla bla bla bla bla bla \\
        bla bla & bla bla bla bla bla bla bla bla \\
        bla bla & bla bla bla bla bla bla bla bla \\
    \end{tabu}
\end{center}
\end{document}

在此处输入图片描述

答案1

首先,我已调整您的代码,以避免出现坏框。如果您省略长度,tabu则它会使用\linewidth

如果您使用类型的所有列X,那么空间将根据您提供给列的第一个参数划分为列。

因此,指定X[5]与指定不同p{5cm}

此外,指定列的正确方法X是(可以省略逗号):

X[<coef>,<align>,<type>]

其中,如果有多列并考虑长度,则缩放列<coef>的宽度,是水平对齐(、或(默认)),是垂直对齐((默认)或)。XX\tabcolsep<align>rclj<type>pmb

指定

X[5cm,p,l]

是错误的,原因如下:您指定了宽度系数 5 ( 5)、居中列 ( c) 和列类型m。然后,您重新定义了添加p哪些覆盖mr哪些覆盖 的内容c。在这种情况下,正确的定义应该是:

X[5,l,p]

p由于这是默认设置,因此可以省略。

如果你想要得到期望的结果,最好使用固定宽度的列和仅有的最后一个计算的是(X)。

这意味着这是正确的代码:

\documentclass[article, 12pt, oneside]{memoir}
\setstocksize{297mm}{210mm}
\settrimmedsize{297mm}{210mm}{*}
\settrims{0mm}{0mm}
\setlrmarginsandblock{10mm}{*}{1}
\setulmarginsandblock{20mm}{*}{1}
\checkandfixthelayout
\usepackage{polyglossia}
\usepackage{microtype}
\usepackage{fontspec}
\defaultfontfeatures{Ligatures=TeX}
\setmainfont{TeX Gyre Schola}
\usepackage{tabu}
\begin{document}
\begin{center}
    \begin{tabu} {|p{5cm}|p{11cm}X[r]|}
        \multicolumn{3}{l}{ \textit{ \textls[100]{bla bla} } } \\
        \toprule
        bla bla                     & bla bla           & bla \\
        bla bla                     & bla bla           & bla \\
        bla bla                     & bla bla           & bla \\
        bla bla                     & bla bla           & bla \\
        bla bla                     & bla bla           & bla \\

    \end{tabu}
    \begin{tabu} {|p{5cm}|X[l]|}
        \addlinespace[1cm]
        \multicolumn{2}{l}{ \textit{ \textls[100]{bla bla} } } \\
        \toprule
        bla bla & bla bla bla bla bla bla bla bla \\
        bla bla & bla bla bla bla bla bla bla bla \\
        bla bla & bla bla bla bla bla bla bla bla \\
    \end{tabu}
\end{center}
\end{document} 

在此处输入图片描述

相关内容