afterpage 中各节的编号不连续

afterpage 中各节的编号不连续

基于该问题的以下最小示例(MWE): 章节不是从横向页面开始的,包括一个编号部分作为 afterpage 指令之后的第一个指令,之后是横向环境。因此,各节的编号为 1 - 3 - 2 - 4。也就是说,不保留连续顺序

我知道 afterpage 软件包的作者 David Carlisle 指出这是一个初步版本,并且不是特别强大。

我不明白问题是什么,更不知道如何解决。我想知道是否有人可以告诉我这个编号问题是否可以轻松纠正以及如何纠正,或者相反,最好放弃使用 afterpage。

这是我的 MWE:

% !TeX TS-program = LuaLaTex
% !TeX encoding   = UTF-8
% !TeX spellcheck = en_US

\documentclass{article}
\usepackage{graphicx}
\usepackage{pdflscape}
\usepackage{afterpage}
\usepackage{lipsum}

\begin{document}
\title{Afterpage \& landscape para evitar página prematura}
\author{Zarko en TeX SE\thanks{https://tex.stackexchange.com/questions/437696/section-doesnt-start-from-landscape-orientation-page}}
\date{23 jun 2018}
\maketitle

\section{Sección A: El paquete afterpage}

This package implements a command, \verb|\afterpage|, that causes the commands specified in its argument to be expanded after the current page is output.

\lipsum[1-2]

\afterpage{%
\begin{landscape}
\section{Sección B, Uso de landscape con un título de sección}
\lipsum[1]
\begin{table}[htb]
\caption{My landscape table}
    \begin{tabular*}{\linewidth}{|@{\extracolsep{\fill}}*{8}{c|}}
    \hline
    1   &   2   &   3   &  4   &   5   &   6   &   7   &   8   \\
    1   &   2   &   3   &  4   &   5   &   6   &   7   &   8   \\
    \hline
    \end{tabular*}
\end{table}
\lipsum[1-2]
\end{landscape}
}

\section{Sección C, que debe ocupar el lugar de la tercera sección}
\lipsum[1]
\begin{figure}[htb]
    \centering
    \includegraphics{example-image-duck}
    \caption{image which follows landscape table}
\end{figure}

\lipsum[1]

\section{Sección D, para confirmar la continuidad de la numeración de las secciones}

\lipsum[2]
\end{document}

答案1

afterpage我认为,如果你将连续文本和表格材料都放在 的范围内,那么你就是在滥用包的机制\afterpage{...}。横向模式应该只用于超宽表格和图形。相反,所有连续文本都应该专门以纵向模式排版。

当然,如果您需要引用横向模式的表格或图形,您当然应该这样做。但这与引用(交叉引用)纵向模式的项目(无论是方程式、图形、表格、脚注等)没有什么不同。

因此,我将重写示例文档的第二部分,如下所示:

\section{Sección B, Uso de landscape sin título de sección}

\lipsum[1]

\bigskip\hrule\smallskip
A call-out to table \ref{tab:landscape}
\smallskip\hrule\bigskip

\afterpage{%  % note that the argument of \afterpage contains only a 'table'
\begin{landscape}
\begin{table}[htb]
\caption{My landscape table} \label{tab:landscape}
    \begin{tabular*}{\linewidth}{|@{\extracolsep{\fill}}*{8}{c|}}
    \hline
    1 & 2 & 3 & 4 & 5 & 6 & 7 & 8   \\
    1 & 2 & 3 & 4 & 5 & 6 & 7 & 8   \\
    \hline
    \end{tabular*}
\end{table}
\end{landscape}
}  % end of scope of \afterpage directive

\lipsum[2-3]

通过此设置,章节编号将再次正确,即连续。

相关内容