ソース ファイルで宣言された順序ではなく、ドキュメントに実際に表示される順序で図を列挙する方法はありますか?
以下のソースがあります:
\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}
次の 2 つのページが生成されます。
TEXT1
TEXT2
+++++++++++++++
+ +
+ FIGUR B +
+ +
+++++++++++++++
Fig 2: Figur B
TEXT3
---new page---
+++++++++++++++
+ +
+ FIGUR A +
+ +
+++++++++++++++
Fig 1: Figur A
したがって、これら 2 つの図の表示はまさに私が望んだとおりですが、出力ドキュメントでは図 2 が図 1 の前に表示されるのは非常に不便です。これは図表の表でも見苦しいです。
Fig 2 "Figur B" page 1
Fig 1 "Figur A" page 2
私が望むのは、Tex が図 B を図 A の後に置くことにした場合、図 B に番号 1 を、図 A に番号 2 を割り当てることです。
汚いハック (setcounter、ソース内の数字の移動) があることは知っていますが、明らかにエレガントなソリューションが欲しいです。
ありがとう!
答え1
通常の状況では、LaTeXいつもfigure
は、ドキュメント内で検出された順序で、特定のタイプの浮動小数点数を出力します。ただし、H
位置指定子は「通常」の状況から外れています。目的を達成するために、H
意図的に通常の範囲外になっています。
可能な解決策は 2 つだけです。
場所指定子を使用しないでください
[H]
。[ht!]
代わりに を使用することを検討してください。[H]
あるいは、@Zarkoがすでにコメントしているように、どうしても使用したい場合は、\clearpage
前に入力中\begin{figure}[H]
。