예를 들어 테이블에 번호를 매기고 싶습니다.
Theorem 1.3
Table 1.4
Lemma 1.5
이 결과를 어떻게 얻을 수 있습니까? 나는 또한 Cleveref를 사용하고 있으므로 이상적으로는 \cref{ThatTable}
작업이 끝나면 링크된 ``표 1.4''를 생성할 것입니다.
답변1
특별한 일을 할 필요는 없습니다. \newtheorem{theorem}[table]{Theorem}
할 것입니다.
\documentclass{book}
\usepackage{amsmath}
\usepackage{amsthm}
\usepackage{cleveref}
\newtheorem{theorem}[table]{Theorem}
\begin{document}
\chapter{My content}
\begin{theorem}\label{A}
\end{theorem}
\begin{table}
\caption{A dummy table}\label{B}
\end{table}
\begin{theorem}\label{C}
\end{theorem}
\begin{theorem}
\end{theorem}
See \cref{A}, \cref{B}, \cref{C}.
\begin{table}
\caption{Another dummy table}
\end{table}
\end{document}
그러나 의 부동 특성으로 인해 table
출력이 "동기화되지 않은" 것처럼 나타날 수 있습니다.
답변2
assoccnt
이는 연관된 카운터(패키지 또는 xassoccnt
) 를 상호 할당하여 달성할 수 있습니다.
증가할 때마다 Theorem
테이블 카운터도 증가해야 하며, 그 반대의 경우에도 lemma
환경이 카운터를 사용하므로 Theorem
이 역시 증가하게 됩니다.
이 연속 계산을 사용하면 계산을 '중단'할 수 있으므로 부동 테이블을 방지해야 합니다.
\documentclass{book}
\usepackage{amsmath}
\usepackage{amsthm}
\usepackage{assoccnt}
\newtheorem{Theorem}{Theorem}
\newtheorem{lemma}[Theorem]{lemma}
\DeclareAssociatedCounters{Theorem}{table}%
\DeclareAssociatedCounters{table}{Theorem}%
\begin{document}
\chapter{My content}
\begin{Theorem}
\end{Theorem}
\begin{table}
\caption{A dummy table}
\end{table}
\begin{Theorem}
\end{Theorem}
\begin{Theorem}
\end{Theorem}
\begin{table}
\caption{Another dummy table}
\end{table}
\begin{lemma}
First lemma
\end{lemma}
\begin{table}
\caption{Another dummy table}
\end{table}
\begin{Theorem}
\end{Theorem}
\end{document}