Longtable에서 \clearpage와 \rowcolor를 함께 작동시키는 방법은 무엇입니까?

Longtable에서 \clearpage와 \rowcolor를 함께 작동시키는 방법은 무엇입니까?

longtable레이아웃 목적으로 다음 페이지로 행을 이동해야 하는 다중 페이지가 있습니다 . 일반적으로 나는 행을 시작했지만 \clearpage(이것은 다른 곳에서도 작동했습니다) 이번에는 \rowcolor행이 필요합니다. \clearpage앞에 를 넣으면 오류 \rowcolor가 발생합니다 "! Misplaced \noalign. \rowcolor ->\noalign". 교환하면 "! Misplaced \omit. \multispan ->\omit"오류가 발생합니다. 페이지를 지우려면 다음과 같이 빈 행을 삽입해야 했습니다.

{\small\addtolength{\tabcolsep}{-2pt}
\begin{longtable}[c]{|>{\raggedright\arraybackslash}m{2.2cm}|>{\raggedright\arraybackslash}m{2.5cm}|>{\raggedright\arraybackslash}m{9.6cm}|}
\caption{Description...\label{tab22}}\\
\hline
\rowcolor{blue}
\textbf{Tâche}&\textbf{Responsabilité}&\textbf{Description}\\\hline
\endfirsthead
\hline
\rowcolor{blue}
\textbf{Tâche}&\textbf{Responsabilité}&\textbf{Description}\\\hline
\endhead %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Création d’une ébauche&
Premier auteur&
Le premier auteur rédige une ébauche du document...\\\hline %%%%%%%%%
Communication&
Éditeur externe&
L’éditeur externe informe l’auteur que la publication...\\\hline %%%%
\multicolumn{3}{c}{\vspace{8mm}}\\
\multicolumn{3}{c}{\hfill}\\
\rowcolor[gray]{0.95}
\multicolumn{3}{|c|}{Si le document est refusé}\\\hline %%%%%%%%%%%%%
\rowcolor[gray]{0.95}
Communication du refus&
Premier auteur&
Le premier auteur informe le Bureau de la rédaction...\\\hline %%%%%%
\end{longtable}
}

나는 다음과 같은 것을 원했습니다.

{\small\addtolength{\tabcolsep}{-2pt}
\begin{longtable}[c]{|>{\raggedright\arraybackslash}m{2.2cm}|>{\raggedright\arraybackslash}m{2.5cm}|>{\raggedright\arraybackslash}m{9.6cm}|}
\caption{Description...\label{tab22}}\\
\hline
\rowcolor{blue}
\textbf{Tâche}&\textbf{Responsabilité}&\textbf{Description}\\\hline
\endfirsthead
\hline
\rowcolor{blue}
\textbf{Tâche}&\textbf{Responsabilité}&\textbf{Description}\\\hline
\endhead %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Création d’une ébauche&
Premier auteur&
Le premier auteur rédige une ébauche du document...\\\hline %%%%%%%%%
Communication&
Éditeur externe&
L’éditeur externe informe l’auteur que la publication...\\\hline %%%%
\clearpage
\rowcolor[gray]{0.95}
\multicolumn{3}{|c|}{Si le document est refusé}\\\hline %%%%%%%%%%%%%
\rowcolor[gray]{0.95}
Communication du refus&
Premier auteur&
Le premier auteur informe le Bureau de la rédaction...\\\hline %%%%%%
\end{longtable}
}

어떤 단서가 있나요?

답변1

최신 tabularray 패키지 사용을 고려할 수 있습니다. 보다문서. 페이지 나누기를 삽입하고 색상을 지정하는 방법에는 여러 가지가 있지만 동시에 아주 쉽게 두 가지 작업을 모두 수행할 수 있습니다.

\documentclass[a4paper]{article}
\usepackage[svgnames]{xcolor}
\usepackage{tabularray}

\begin{document}

\begin{small}
\begin{longtblr}[
    caption={Description\ldots},% set caption
    label={tab22}% set label
]
{
    colspec={Q[m,wd=2.2cm]Q[m,wd=2.5cm]Q[m,wd=9.6cm]},
    colsep=4pt,
    rowhead=0, % header rows to repeat on each page
    hlines, % horizontal lines between rows
    vlines, % veritcal rows between columns
    hborder{4} = {pagebreak=yes}, % page break before the 4th row
    row{1} = {bg=blue,fg=gray8},% make first row blue
    row{4-5} = {bg=gray8} % make 4th and 5th rows gray
}
    \textbf{Tâche}&\textbf{Responsabilité}&\textbf{Description}\\
    Création d’une ébauche&
    Premier auteur&
    Le premier auteur rédige une ébauche du document\ldots\\
    Communication&
    Éditeur externe&
    L’éditeur externe informe l’auteur que la publication \ldots\\
    \SetCell[c=3]{c}{Si le document est refusé} & & \\
    Communication du refus&
    Premier auteur&
    Le premier auteur informe le Bureau de la rédaction \ldots
\end{longtblr}
\end{small}

\end{document}

여러 페이지로 분할된 테이블

관련 정보