有沒有一種方法可以按照它們在文件中實際出現的順序而不是按照它們在來源文件中聲明的順序來列舉數字?
我有以下來源:
\documentclass{article}
\usepackage{float}
\begin{document}
TEXT1
\begin{figure}[p]
\caption{Figur A}
\end{figure}
TEXT2
\begin{figure}[H]
\caption{Figur B}
\end{figure}
TEXT3
\end{document}
產生以下兩頁:
TEXT1
TEXT2
+++++++++++++++
+ +
+ FIGUR B +
+ +
+++++++++++++++
Fig 2: Figur B
TEXT3
---new page---
+++++++++++++++
+ +
+ FIGUR A +
+ +
+++++++++++++++
Fig 1: Figur A
所以,這兩個數字的顯示方式正是我想要的,但在輸出文件中,圖 2 出現在圖 1 之前,這確實很糟糕。
Fig 2 "Figur B" page 1
Fig 1 "Figur A" page 2
我想要的是,當且僅當 tex 決定將圖 B 放在圖 A 之後,那麼它應該為圖 B 提供數字 1,為圖 A 提供數字 2
。在原始程式碼中移動數字),但是顯然我想要一個優雅的解決方案。
謝謝!
答案1
一般情況下,LaTeX總是輸出給定類型的浮點數——比如說figure
——按照它們在文件中遇到的順序。然而,H
位置說明符不屬於「正常」情況。為了實現其目標,H
故意走出常態。
只有兩種可能的補救措施:
不要使用
[H]
位置說明符。考慮使用[ht!]
代替。或者,正如 @Zarko 已經評論的那樣,如果您堅持使用
[H]
,請準備插入\clearpage
前打字\begin{figure}[H]
。