tabularx에서 행의 글꼴 색상을 변경하는 방법은 무엇입니까?

tabularx에서 행의 글꼴 색상을 변경하는 방법은 무엇입니까?

테이블이 있는데 5번째와 6번째 행의 글꼴 색상을 빨간색으로 하고 싶습니다. 지금 내가 하고 있는 일은 이 행에 있는 각 셀의 색상을 변경하는 것입니다. 한 셀뿐만 아니라 행의 글꼴 색상을 변경할 수 있는 명령이 있습니까?

\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage[russian]{babel}  
\usepackage{multirow,tabularx}
\usepackage[a4paper,margin=1in,landscape]{geometry}
\usepackage[table]{xcolor}
\usepackage{colortbl,hhline}

\begin{document}

\begin{tabularx}{\textwidth}{ |X|X|X| }
\hline
\textbf{Наименование} & \textbf{BBB} & \textbf{ААА} \\ \hline
Теплопостачання припливних систем & 83 044,00 грн. & 67 000 грн \\ \hline
Монтаж , пусканаладка & 64 000,00 грн. & 74885849 грн \\ \hline
\rowcolor{yellow}
ИТОГО: & 1089158,71 грн. & 100000 \\ \hline
\color{red} Отклонение от минимального предложения, грн & \color{red} 0,00 грн. & \color{red} 34000 \\ \hline
\color{red} Отклонение от минимального предложения, \% & \color{red} 0\% & \color{red} 10 \%  \\ \hline
Срок выполнения работ & 3-4 недели & 2 недели \\ \hline
\end{tabularx}
\vspace{1cm}

\end{document}

여기에 이미지 설명을 입력하세요

답변1

다음은 에 설명된 기술을 기반으로 합니다.\rowstyle셀 내용을 인수로 사용하는 개선된 기능, 다음을 사용하여 각 셀을 캡처합니다.collcell:

여기에 이미지 설명을 입력하세요

각 셀은 스위치가 또는 로 설정되었는지 여부에 따라 를 ..사용하여 설정됩니다 . 이러한 스위치는 셀(및 그룹) 내부에서 발생하므로 변경 사항이 셀 범위를 넘어서 존재하도록 설정해야 합니다.\textcolor{red}{..}\ifrowcolour\rowcolourtrue\rowcolourfalsetabular\global

시각적 매력을 위해 다음을 사용하는 것이 좋습니다.booktabs당신을 위해 테이블 ​​프레젠테이션을 진행합니다.

답변2

새로운 테이블 패키지 포함 tabularray:

사례 1: 수평선과 수직선이 있는 경우:

\documentclass{article}
\usepackage[a4paper,margin=1in,landscape]{geometry}
\usepackage[russian]{babel}
\usepackage{xcolor}
\usepackage{tabularray}

\begin{document}

\begin{tblr}{hline{1,2,Z}={solid, 0.5pt}, hline{3-Y}={dashed}, 
             vlines,
             colspec={*{3}{X[l]}},
             row{1} ={font=\bfseries}
             }
Наименование    & BBB               & ААА               \\
Теплопостачання припливних систем 
                & 83 044,00 грн.    & 67 000 грн        \\
Монтаж , пусканаладка 
                & 64 000,00 грн.    & 74 885 849 грн    \\
    \SetRow{yellow}
ИТОГО:          & 1089158,71 грн.   & 100 000           \\
    \SetRow{fg=red}
Отклонение от минимального предложения, грн & 0,00 грн. & 34000 \\
    \SetRow{fg=red}
Отклонение от минимального предложения, \% 
                & 0 \%              & 10 \%             \\
Срок выполнения работ 
                & 3-4 недели        & 2 недели          \\
\end{tblr}

\end{document}

여기에 이미지 설명을 입력하세요

사례 2: 위쪽, 열 머리글 뒤, 아래쪽에 수평선이 있고 수직선이 없습니다. 테이블 본체는 이전과 동일하며 테이블 사양만 변경되었습니다.

\begin{tblr}{hline{1,2,Z}={solid, 0.5pt}, 
             colspec={*{3}{X[l]}},
             row{1} ={font=\bfseries}
             }
% table body, the same as before

여기에 이미지 설명을 입력하세요

답변3

에는 현재 행 끝의 스타일을 변경하는 {NiceTabular}명령이 있습니다 .\RowStyle

\documentclass{article}
\usepackage[russian]{babel}  
\usepackage[a4paper,margin=1in,landscape]{geometry}
\usepackage{xcolor}
\usepackage{nicematrix}

\begin{document}

\begin{NiceTabularX}{\textwidth}{XXX}[hvlines]
\RowStyle{\bfseries}
Наименование & BBB & ААА \\ 
Теплопостачання припливних систем & 83 044,00 грн. & 67 000 грн \\ 
Монтаж , пусканаладка & 64 000,00 грн. & 74885849 грн \\ 
\RowStyle[rowcolor=yellow]{}
ИТОГО: & 1089158,71 грн. & 100000 \\ 
\RowStyle[nb-rows=2,color=red]{}
Отклонение от минимального предложения, грн & 0,00 грн. & 34000 \\ 
Отклонение от минимального предложения, \% & 0 \% & 10 \%  \\ 
Срок выполнения работ & 3-4 недели & 2 недели \\ 
\end{NiceTabularX}

\end{document}

여러 컴파일이 필요합니다( nicematrix내부적으로 PGF/Tikz 노드를 사용하기 때문에).

위 코드의 출력

관련 정보