如何为划掉的单元格添加颜色?

如何为划掉的单元格添加颜色?

我使用这里给出的答案划掉了字母 K......删除任意单元格然后我使用 为该行着色\cellcolor,但被划掉的单元格只填充了一半...我需要更改什么来为整个单元格着色……?

在此处输入图片描述

这是我的代码...

\documentclass[titlepage=true, 12pt]{scrartcl}

\usepackage[ngerman]{babel}
\usepackage[a4paper, text={16.5cm, 25.2cm}, centering]{geometry}

\usepackage{newtxtext,newtxmath}
\setkomafont{disposition}{\normalfont\bfseries}

\usepackage[utf8]{inputenc}

\setlength{\parskip}{1.2ex}
\setlength{\parindent}{0em}

\usepackage{fancyhdr}
\pagestyle{fancy}

\fancyhf{}
\renewcommand{\headrulewidth}{0pt}
\fancyhead[L]{Name}
\fancyfoot[C]{\thepage}


\usepackage{filecontents}
\usepackage[autostyle]{csquotes}

\usepackage{setspace}

\usepackage{tabularx}


\usepackage{adjustbox}

\usepackage{zref-savepos}

\usepackage{tikz}
\usetikzlibrary{calc}
\usepackage{xcolor,stackengine}

\newcommand\splat[3][white]{%
  \colorbox{#1}{~~\sffamily\stackon{\fbox{\makebox[3ex]{\large\strut #2}}}{#3}~~}%
}

\usepackage{colortbl}

\newcounter{NoTableEntry}
\renewcommand*{\theNoTableEntry}{NTE-\the\value{NoTableEntry}}

\newcommand*{\strike}[2]{%
  \multicolumn{1}{#1}{%
    \stepcounter{NoTableEntry}%
    \vadjust pre{\zsavepos{\theNoTableEntry t}}% top
    \vadjust{\zsavepos{\theNoTableEntry b}}% bottom
    \zsavepos{\theNoTableEntry l}% left
    \hspace{0pt plus 1filll}%
    #2% content
    \hspace{0pt plus 1filll}%
    \zsavepos{\theNoTableEntry r}% right
    \tikz[overlay]{%
      \draw
        let
          \n{llx}={\zposx{\theNoTableEntry l}sp-\zposx{\theNoTableEntry r}sp-\tabcolsep},
          \n{urx}={\tabcolsep},
          \n{lly}={\zposy{\theNoTableEntry b}sp-\zposy{\theNoTableEntry r}sp},
          \n{ury}={\zposy{\theNoTableEntry t}sp-\zposy{\theNoTableEntry r}sp}
        in
        (\n{llx}, \n{lly}) -- (\n{urx}, \n{ury})
      ;
    }% 
  }%
}




    \begin{document}

    \newcolumntype{L}[1]{>{\raggedright\arraybackslash}p{#1}}
    \newcolumntype{C}[1]{>{\centering\arraybackslash}p{#1}}
    \newcolumntype{R}[1]{>{\raggedleft\arraybackslash}p{#1}}

    \setlength{\extrarowheight}{5pt}
    \setlength{\tabcolsep}{6pt}

    \adjustbox{valign=t}{\begin{minipage}[t]{0.63\textwidth}

    \begin{tabular}{|C{0.8cm}|L{8cm}|}

    \hline
    A & peu de cours \\
    \hline
    B &  la confiance en soi\\
    \hline
    C &  se trouve le village du Père Noël \\
    \hline
    D & début de semestre\\
    \hline
    E &  à augmenter la fréquentation de la ville\\
    \hline
    F & des ours polaires \\
    \hline
    G & fin de semestre\\
    \hline
    H & beaucoup de cours \\
    \hline
    I & nous a permis de nous intégrer plus facilement \\
    \hline
    J & une magnifique aurore boréale \\
    \hline
    \strike{|c|}{\cellcolor{gray!30}K} &\cellcolor{gray!30} les gens sont quasiment tous bilingues en anglais \\
    \hline
    \end{tabular}

    \end{minipage}}
    \adjustbox{valign=t}{\begin{minipage}[t]{0.36\textwidth}

    \Shortstack[l]{
    \splat[gray!30]{K}{0}\splat{}{1}\splat{}{2}\splat{}{3}
    \splat{}{4}\splat{}{5}\splat{}{6}\splat{}{7}
    \splat{}{8}}

    \end{minipage}}


    \end{document}

答案1

一种可能性是,不使用\strike,而是使用包\cancel的功能cancel。唯一的怪癖是它在数学模式下运行,所以我需要使用$\cancel{\mbox{K}}$

\documentclass[titlepage=true, 12pt]{scrartcl}

\usepackage[ngerman]{babel}
\usepackage[a4paper, text={16.5cm, 25.2cm}, centering]{geometry}

\usepackage{newtxtext,newtxmath,cancel}
\setkomafont{disposition}{\normalfont\bfseries}

\usepackage[utf8]{inputenc}

\setlength{\parskip}{1.2ex}
\setlength{\parindent}{0em}

\usepackage{fancyhdr}
\pagestyle{fancy}

\fancyhf{}
\renewcommand{\headrulewidth}{0pt}
\fancyhead[L]{Name}
\fancyfoot[C]{\thepage}


\usepackage{filecontents}
\usepackage[autostyle]{csquotes}

\usepackage{setspace}

\usepackage{tabularx}


\usepackage{adjustbox}

\usepackage{zref-savepos}

\usepackage{tikz}
\usetikzlibrary{calc}
\usepackage{xcolor,stackengine}

\newcommand\splat[3][white]{%
  \colorbox{#1}{~~\sffamily\stackon{\fbox{\makebox[3ex]{\large\strut #2}}}{#3}~~}%
}

\usepackage{colortbl}

\newcounter{NoTableEntry}
\renewcommand*{\theNoTableEntry}{NTE-\the\value{NoTableEntry}}

\newcommand*{\strike}[2]{%
  \multicolumn{1}{#1}{%
    \stepcounter{NoTableEntry}%
    \vadjust pre{\zsavepos{\theNoTableEntry t}}% top
    \vadjust{\zsavepos{\theNoTableEntry b}}% bottom
    \zsavepos{\theNoTableEntry l}% left
    \hspace{0pt plus 1filll}%
    #2% content
    \hspace{0pt plus 1filll}%
    \zsavepos{\theNoTableEntry r}% right
    \tikz[overlay]{%
      \draw
        let
          \n{llx}={\zposx{\theNoTableEntry l}sp-\zposx{\theNoTableEntry r}sp-\tabcolsep},
          \n{urx}={\tabcolsep},
          \n{lly}={\zposy{\theNoTableEntry b}sp-\zposy{\theNoTableEntry r}sp},
          \n{ury}={\zposy{\theNoTableEntry t}sp-\zposy{\theNoTableEntry r}sp}
        in
        (\n{llx}, \n{lly}) -- (\n{urx}, \n{ury})
      ;
    }% 
  }%
}




    \begin{document}

    \newcolumntype{L}[1]{>{\raggedright\arraybackslash}p{#1}}
    \newcolumntype{C}[1]{>{\centering\arraybackslash}p{#1}}
    \newcolumntype{R}[1]{>{\raggedleft\arraybackslash}p{#1}}

    \setlength{\extrarowheight}{5pt}
    \setlength{\tabcolsep}{6pt}

    \adjustbox{valign=t}{\begin{minipage}[t]{0.63\textwidth}

    \begin{tabular}{|C{0.8cm}|L{8cm}|}

    \hline
    A & peu de cours \\
    \hline
    B &  la confiance en soi\\
    \hline
    C &  se trouve le village du Père Noël \\
    \hline
    D & début de semestre\\
    \hline
    E &  à augmenter la fréquentation de la ville\\
    \hline
    F & des ours polaires \\
    \hline
    G & fin de semestre\\
    \hline
    H & beaucoup de cours \\
    \hline
    I & nous a permis de nous intégrer plus facilement \\
    \hline
    J & une magnifique aurore boréale \\
    \hline
    \cellcolor{gray!30}$\cancel{\mbox{K}}$ &\cellcolor{gray!30} les gens sont quasiment tous bilingues en anglais \\
    \hline
    \end{tabular}

    \end{minipage}}
    \adjustbox{valign=t}{\begin{minipage}[t]{0.36\textwidth}

    \Shortstack[l]{
    \splat[gray!30]{K}{0}\splat{}{1}\splat{}{2}\splat{}{3}
    \splat{}{4}\splat{}{5}\splat{}{6}\splat{}{7}
    \splat{}{8}}

    \end{minipage}}


    \end{document}

在此处输入图片描述

然后人们可以玩游戏来欺骗它:

\hline
\cellcolor{gray!30}\makebox[0pt]{$\cancel{\makebox[5.7ex]{%
  K\rule[-3ex]{0pt}{5.5ex}}}$} &%
  \cellcolor{gray!30} les gens sont quasiment tous bilingues en anglais \\
\hline

结果如下

在此处输入图片描述

答案2

使用,您可以轻松地使用 TikZ 在表格中绘制所需的任何规则,因为它会{NiceTabular}在表格的单元格、行和列下为您创建 PGF/TikZ 节点。nicematrixnicematrix

这里,攻击你的手机的指令就 在环境\tikz \draw (12-|1) -- (11-|2) ; 中。\CodeAfter{NiceTabular}

\documentclass[titlepage=true, 12pt]{scrartcl}
\usepackage[french]{babel}
\usepackage[a4paper, text={16.5cm, 25.2cm}, centering]{geometry}
\usepackage{newtxtext,newtxmath}
\usepackage{adjustbox}
\usepackage{tikz}
\usepackage{xcolor}
\usepackage{stackengine}
\usepackage{nicematrix}

\newcommand\splat[3][white]{%
  \colorbox{#1}{~~\sffamily\stackon{\fbox{\makebox[3ex]{\large\strut #2}}}{#3}~~}%
}


\begin{document}

\setlength{\extrarowheight}{5pt}
\setlength{\tabcolsep}{6pt}

\adjustbox{valign=t}{\begin{minipage}[t]{0.63\textwidth}
\begin{NiceTabular}{p[c]{0.8cm}p[l]{8cm}}[hvlines,color-inside]
    A & peu de cours \\
    B & la confiance en soi\\
    C & se trouve le village du Père Noël \\
    D & début de semestre\\
    E & à augmenter la fréquentation de la ville\\
    F & des ours polaires \\
    G & fin de semestre\\
    H & beaucoup de cours \\
    I & nous a permis de nous intégrer plus facilement \\
    J & une magnifique aurore boréale \\
    \rowcolor{gray!30}
    K & les gens sont quasiment tous bilingues en anglais \\
\CodeAfter
    \tikz \draw (12-|1) -- (11-|2) ; 
\end{NiceTabular}
\end{minipage}}
%
\adjustbox{valign=t}{\begin{minipage}[t]{0.36\textwidth}
\Shortstack[l]{
\splat[gray!30]{K}{0}\splat{}{1}\splat{}{2}\splat{}{3}
\splat{}{4}\splat{}{5}\splat{}{6}\splat{}{7}
\splat{}{8}}
\end{minipage}}

\end{document}

您需要多次编译。

上述代码的输出

相关内容