
다음 코드를 사용하여 문서를 생성합니다.
\documentclass[10pt]{article}
\usepackage{ltablex}
\usepackage[top=2.5cm, bottom=2.5cm, left=2.5cm, right=2.5cm]{geometry}
\usepackage{bibentry}
\usepackage{etoolbox}
\usepackage{helvet}
\usepackage{xcolor}
\usepackage{graphicx}
\usepackage{color}
\usepackage{colortbl}
\usepackage{url}
\usepackage{fancyhdr}
\usepackage{datenumber}
\usepackage{xspace}
\usepackage{blindtext}
%Column width for tables
\def \firstColumnWidth {3.5cm}
\def \secondColumnWidth {12.5cm}
%This is the headline
\newcommand{\headline}[1] {
\section*{#1}
\vspace{-1.75em}
\noindent\makebox[\linewidth]{\rule{\textwidth}{0.4pt}}
\vspace{-1.75em}
}
\begin{document}
\headline{Test A}
\noindent\begin{tabularx}{\textwidth}{p{\firstColumnWidth}p{\secondColumnWidth}}
\multicolumn{2}{c}{\cellcolor[gray]{0.75}2015}\\
Foo & \blindtext\\
Bar & \blindtext\\
\multicolumn{2}{c}{\cellcolor[gray]{0.75}2014}\\
Foo & \blindtext\\
Bar & \blindtext\\
\end{tabularx}
\headline{Test B}
\noindent\begin{tabularx}{\textwidth}{p{\firstColumnWidth}p{\secondColumnWidth}}
Foo & \blindtext\\
Bar & \blindtext\\
\end{tabularx}
\end{document}
이제 표제와 표의 첫 번째 행이 항상 같은 페이지에 있는지 확인하고 싶습니다. \begin{samepage}
and 로 그렇게 하려고 했는데 \end{samepage}
문제는 가 \end{samepage}
테이블 중앙에 있을 수 없다는 것입니다. 다른 어떤 옵션이 있나요?
답변1
X
열이 없으므로 tabularx
여기서는 유용한 작업이 없습니다. 불행 하게도 항상 longtable
중단 을 허용 하지만 그렇지 않은 변형을 정의하는 것은 간단합니다.\\*
longtable
\hline
\documentclass[10pt]{article}
\usepackage[top=2.5cm, bottom=2.5cm, left=2.5cm, right=2.5cm]{geometry}
\usepackage{helvet}
\usepackage[table]{xcolor}
\usepackage{blindtext}
\usepackage{longtable}
\makeatletter
\def\nbhline{%no break hline
\noalign{%
\global\let\tmp\@lowpenalty
\gdef\@lowpenalty{-10000 }}%
\hline
\noalign{\global\let\@lowpenalty\tmp}}
\makeatother
\setlength\extrarowheight{2pt}
%Column width for tables
\def \firstColumnWidth {3.5cm}
\def \secondColumnWidth {12.5cm}
%This is the headline
\newcommand\headline[1]{%
\noalign{\medskip}%
\multicolumn{2}{@{}l}{\large\bfseries#1}\\*\nbhline
\noalign{\nobreak\smallskip}}
\begin{document}
\begin{longtable}{p{\firstColumnWidth}p{\secondColumnWidth}}
\headline{Test A}
\multicolumn{2}{c}{\cellcolor[gray]{0.75}2015}\\
Foo & \blindtext\\
Bar & \blindtext\\
\multicolumn{2}{c}{\cellcolor[gray]{0.75}2014}\\
Foo & \blindtext\\
Bar & \blindtext\\
\headline{Test B}
Foo & \blindtext\\
Bar & \blindtext\\
\end{longtable}
\end{document}
답변2
여기에 해결책이 있습니다. 나는 tabularx의 \headline 부분을 만듭니다. 테이블 형식으로 분할할 필요가 없습니다.
\documentclass[10pt]{article}
\usepackage{ltablex}
\usepackage[top=2.5cm, bottom=2.5cm, left=2.5cm, right=2.5cm]{geometry}
\usepackage{bibentry}
\usepackage{etoolbox}
\usepackage{helvet}
\usepackage{xcolor}
\usepackage{graphicx}
\usepackage{color}
\usepackage{colortbl}
\usepackage{url}
\usepackage{fancyhdr}
\usepackage{datenumber}
\usepackage{xspace}
\usepackage{blindtext}
%Column width for tables
\def \firstColumnWidth {3.5cm}
\def \secondColumnWidth {12.5cm}
%This is the headline
\newcommand{\headline}[1] {%
\multicolumn{2}{@{}p{\textwidth}}{\Large\bfseries #1\par
\vspace{-.75em}
\makebox[\linewidth]{\rule{\textwidth}{0.4pt}}}\\*}
\begin{document}
\begin{tabularx}{\textwidth}{p{\firstColumnWidth}p{\secondColumnWidth}}
\headline{Test A}
\multicolumn{2}{c}{\cellcolor[gray]{0.75}2015}\\
Foo & \blindtext\\
Bar & \blindtext\\
\multicolumn{2}{c}{\cellcolor[gray]{0.75}2014}\\
Foo & \blindtext\\
Bar & \blindtext\\
\end{tabularx}
\begin{tabularx}{\textwidth}{p{\firstColumnWidth}p{\secondColumnWidth}}
\headline{Test B}
Foo & \blindtext\\
Bar & \blindtext\\
\end{tabularx}
\begin{tabularx}{\textwidth}{p{\firstColumnWidth}p{\secondColumnWidth}}
\headline{Test A}
\multicolumn{2}{c}{\cellcolor[gray]{0.75}2015}\\
Foo & \blindtext\\
Bar & \blindtext\\
\multicolumn{2}{c}{\cellcolor[gray]{0.75}2014}\\
Foo & \blindtext\\
Bar & \blindtext\\
\headline{Test B}
Bar & \blindtext\\
Bar & \blindtext\\
Foo & \blindtext\\
Bar & \blindtext\\
Bar & \blindtext\\
Bar & \blindtext\\
Bar & \blindtext\\
Bar & \blindtext\\
\headline{Test C}
Foo & \blindtext\\
Bar & \blindtext\\
\end{tabularx}
\end{document}