easytable 包和 \colorrow

easytable 包和 \colorrow

我用easytable制作等距表格的软件包。此软件包提供TAB(带大写字母的)制作表格的环境。

同时我使用xcolor带有给单元格着色的选项的包table

该选项\cellcolor提供的命令可以在一个环境内部或者除该环境之外的其他表环境中正常工作。tablexcolortabularTAB

正如您在以下 MWE 中看到的,为环境\cellcolor中的单元格中着色,但不为环境tabular中的单元格着色:TAB

\documentclass{article}
\usepackage[thinlines]{easytable}
\usepackage[table]{xcolor}


\begin{document}

\begin{TAB}(e,0.4cm,0.4cm){|c|}{|c:c:c:c|}
  T \cellcolor{blue!25} \\
  ~ \\
  ~ \\
  ~ \\
\end{TAB}


\begin{tabular}{l|c|r}
  \hline
  Some & \cellcolor{blue!25}coloured & contents \\
  \hline
\end{tabular}
\end{document}

以下是他的渲染图: 在此处输入图片描述

TAB那么,我怎样才能强制环境中的细胞着色(使用xcolor或其他解决方案,这并不重要)?

答案1

以下是使用新tabularray包的解决方案(参见加拿大运输安全局)。

\documentclass{article}

\usepackage{xcolor}
\usepackage{tabularray}

\begin{document}

\begin{tblr}{
        hlines={0.7pt, solid}, vlines={0.7pt, solid},
        hline{2-Y} = {0.5pt, dashed},
        colspec={c}, rows={4mm}, columns={4mm},
        rowsep=0mm, colsep=0mm, stretch=0,
    }
    \SetCell{blue!25}T \\
    ~ \\
    ~ \\
    ~ \\
\end{tblr}

\begin{tblr}{
        colspec={l|c|r},
        rowsep=0mm,
    }
    \hline
    Some & \SetCell{blue!25}coloured & contents \\
    \hline
\end{tblr}

\end{document}

产生输出 彩色表格

tblr环境中,您可以使用命令\SetCell来修改当前单元格的外观。tabularray包对间距有不同的默认规范,因此我修改了一些参数以类似于示例的输出。请查看表格数组文档以获取更多信息。

如果您经常使用这些表,您可以考虑使用这些规范作为默认值来定义一个新环境。

\NewTblrEnviron{mytblr}
\SetTblrInner[mytblr]{
    hlines={0.7pt, solid}, vlines={0.7pt, solid},
    hline{2-Y} = {0.5pt, dashed},
    rows={4mm}, columns={4mm},
    rowsep=0mm, colsep=0mm, stretch=0,
}

\begin{mytblr}{c}
    \SetCell{blue!25}T \\
    ~ \\
    ~ \\
    ~ \\
\end{mytblr}

您可以决定使用哪些规范作为默认值。例如,如果您想为每个表单独指定单元格大小,只需删除该行rows={4mm}, columns={4mm}并在 的参数中指定它mytblr

相关内容