如何在LaTeX中高亮合并单元格且不遮挡内容?(指定单元格着色)
解决LaTeX合并单元格高亮且文本可见的问题
问题原因
直接用\cellcolor搭配\multirow时,默认\multirow的文本会绘制在表格底层,而\cellcolor的背景层会覆盖文本,导致内容被遮挡。
解决方案
给每个被合并的单元格添加对应背景色,同时将\multirow命令放在第一个带背景色的单元格中,让文本绘制在所有背景层上方。以下是修改后的可运行示例:
\documentclass[12pt]{article} \usepackage[table]{xcolor} \usepackage{multirow} \begin{document} \begin{table}[ht] \centering \begin{tabular}{c|c|c} \Xhline{1pt} % 合并3行的A:给每一行第一列加红色背景,文本放在第一行 \cellcolor{red}\multirow{3}{*}{A} & B & C \\ \cline{2-3} \cellcolor{red} & \cellcolor{blue}\multirow{2}{*}{D} & E \\ \cline{3-3} \cellcolor{red} & \cellcolor{blue} & F \\ \Xhline{1pt} \end{tabular} \end{table} \end{document}
关键说明
- 针对合并3行的"A":在第1、2、3行的第一列都添加
\cellcolor{red},把\multirow{3}{*}{A}放在第一行的背景色之后,确保文本覆盖在所有红色背景上。 - 针对合并2行的"D":在第2、3行的第二列都添加
\cellcolor{blue},把\multirow{2}{*}{D}放在第二行的背景色之后,文本会显示在蓝色背景上方。
内容的提问来源于stack exchange,提问作者WeiJie Liu
相关产品推荐
相关产品推荐

