
Я хочу вставить длинные детализированные списки в файл longtable
.
Хотя среды itemize обычно вставляют разрывы страниц в соответствующих позициях, они ведут себя так, как будто они неразрывны, когда заключены в longtable. Как я могу повлиять на это поведение?
\documentclass[a4paper]{article}
\usepackage{blindtext}
\usepackage{longtable}
\begin{document}
\begin{longtable}{|p{10cm}|}
\begin{itemize}
\item \blindtext
\item \blindtext
\item \blindtext
%\pagebreak
\item \blindtext
\end{itemize}
\end{longtable}
\end{document}
При компиляции выше, первая страница остается пустой, а longtable
начинается на второй странице. Вся \itemize
среда втиснута в одну страницу, которая переполняется внизу.
Я бы хотел, чтобы разрывы страниц вставлялись где угодно: предпочтительно между двумя последовательными \item
элементами (или если \item
слишком длинный, его можно разбить). Даже вставка руководства \pagebreak
(как намекается) просто расширит вертикальное пространство между соседними \item
записями, не вызывая ожидаемого поведения.
Я где-то читал, что это может быть связано с какими-то штрафными значениями, но не смог понять, как их установить.
РЕДАКТИРОВАТЬ:
Выше — MWE. Настоящий документ — это отчет с очень длинными списками публикаций. Я использую табличную структуру, потому что мне нужно воспроизвести официальный шаблон Word, в котором все находится в таблицах. Иногда мне нужно использовать двойные столбцы, разделенные ячейки и т. д., чтобы воспроизвести шаблон, поэтому мне действительно нужен какой-то longtable
пакет типов.
Приветствуется решение, включающее другие трюки и пакеты. Надеюсь, вы видите, чего я хочу добиться.
На самом деле все выглядит примерно так:
\documentclass[a4paper]{article}
\usepackage{longtable}
\usepackage{enumitem}
\usepackage{hyperref}
\begin{document}
\begin{longtable}{|p{\linewidth}|}
\hline
\textbf{A1. List all scientific publications} \\ \hline
Authors, titles, references, etc. \\ \hline
\setlength{\parindent}{1em}
\textbf{Journal papers}
\begin{enumerate}[start=1,label={[J\arabic*]},leftmargin=10mm,rightmargin=5mm]
\item Authors, ``Title,'' Journal, vol. 00, pp. 1234-4321, 2020.
\item Authors, ``Title,'' Journal, vol. 00, pp. 1234-4321, 2020.
\item Authors, ``Title,'' Journal, vol. 00, pp. 1234-4321, 2020.
\item Authors, ``Title,'' Journal, vol. 00, pp. 1234-4321, 2020.
\item Authors, ``Title,'' Journal, vol. 00, pp. 1234-4321, 2020.
\item Authors, ``Title,'' Journal, vol. 00, pp. 1234-4321, 2020.
% many many more items here
\end{enumerate}
\setlength{\parindent}{1em}
\textbf{Patents}
\begin{enumerate}[start=1,label={[P\arabic*]},leftmargin=10mm,rightmargin=5mm]
\item Authors. Title. Code. Publication number: 123456.
\item Authors. Title. Code. Publication number: 123456.
\item Authors. Title. Code. Publication number: 123456.
\item Authors. Title. Code. Publication number: 123456.
% many many more items here
\end{enumerate}
\setlength{\parindent}{1em}
\textbf{Open source code}
\begin{enumerate}[start=1,label={[O\arabic*]},leftmargin=10mm,rightmargin=5mm]
\item Authors: \textit{Title} \url{https://example.com/software}.
\item Authors: \textit{Title} \url{https://example.com/software}.
\item Authors: \textit{Title} \url{https://example.com/software}.
% many many more items here
\end{enumerate}
\\ \hline
\end{longtable}
\end{document}
решение1
Для ваших целей вам не нужно longtable
. Используйте только списки, которые могут разбиваться между страницами. \hline
Вы можете имитировать с помощью \noindent\rule{\linewidth}{0.5pt}
:
\documentclass[a4paper]{article}
\usepackage{enumitem}
\usepackage{hyperref}
%---------------- show page layout. don't use in a real document!
\usepackage{showframe}
\renewcommand\ShowFrameLinethickness{0.15pt}
\renewcommand*\ShowFrameColor{\color{red}}
%---------------------------------------------------------------%
\begin{document}
\noindent\rule{\linewidth}{0.5pt}
\textbf{A1. List all scientific publications}
Authors, titles, references, etc.
\noindent\rule{\linewidth}{0.5pt}
\textbf{Journal papers}
\begin{enumerate}[start=1,label={[J\arabic*]},leftmargin=10mm,rightmargin=5mm]
\item Authors, ``Title,'' Journal, vol. 00, pp. 1234-4321, 2020.
\item Authors, ``Title,'' Journal, vol. 00, pp. 1234-4321, 2020.
\item Authors, ``Title,'' Journal, vol. 00, pp. 1234-4321, 2020.
\item Authors, ``Title,'' Journal, vol. 00, pp. 1234-4321, 2020.
\item Authors, ``Title,'' Journal, vol. 00, pp. 1234-4321, 2020.
\item Authors, ``Title,'' Journal, vol. 00, pp. 1234-4321, 2020.
\item Authors, ``Title,'' Journal, vol. 00, pp. 1234-4321, 2020.
\item Authors, ``Title,'' Journal, vol. 00, pp. 1234-4321, 2020.
\item Authors, ``Title,'' Journal, vol. 00, pp. 1234-4321, 2020.
\item Authors, ``Title,'' Journal, vol. 00, pp. 1234-4321, 2020.
\item Authors, ``Title,'' Journal, vol. 00, pp. 1234-4321, 2020.
% many many more items here
\end{enumerate}
\textbf{Patents}
\begin{enumerate}[start=1,label={[P\arabic*]},leftmargin=10mm,rightmargin=5mm]
\item Authors. Title. Code. Publication number: 123456.
\item Authors. Title. Code. Publication number: 123456.
\item Authors. Title. Code. Publication number: 123456.
\item Authors. Title. Code. Publication number: 123456.
\item Authors. Title. Code. Publication number: 123456.
\item Authors. Title. Code. Publication number: 123456.
\item Authors. Title. Code. Publication number: 123456.
\item Authors. Title. Code. Publication number: 123456.
\item Authors. Title. Code. Publication number: 123456.
\item Authors. Title. Code. Publication number: 123456.
\item Authors. Title. Code. Publication number: 123456.
\item Authors. Title. Code. Publication number: 123456.
\item Authors. Title. Code. Publication number: 123456.
\item Authors. Title. Code. Publication number: 123456.
\item Authors. Title. Code. Publication number: 123456.
\item Authors. Title. Code. Publication number: 123456.
\item Authors. Title. Code. Publication number: 123456.
\item Authors. Title. Code. Publication number: 123456.
\item Authors. Title. Code. Publication number: 123456.
\item Authors. Title. Code. Publication number: 123456.
\end{enumerate}
\textbf{Open source code}
\begin{enumerate}[start=1,label={[O\arabic*]},leftmargin=10mm,rightmargin=5mm]
\item Authors: \textit{Title} \url{https://example.com/software}.
\item Authors: \textit{Title} \url{https://example.com/software}.
\item Authors: \textit{Title} \url{https://example.com/software}.
% many many more items here
\end{enumerate}
\noindent\rule{\linewidth}{0.5pt}
\end{document}