부록 이후 그림 번호 매기기 재개

부록 이후 그림 번호 매기기 재개

나는 11개의 장과 부록, 마지막으로 또 다른 장(예: 네덜란드어 요약)으로 구성된 논문을 준비 중입니다. 마지막 장(네덜란드어 요약)에 몇 개의 그림이 있는데 그림 번호 매기기를 다시 시작하고 싶습니다(예: 네덜란드어 요약 장의 첫 번째 그림에는 12.1로 번호를 매겨야 합니다). 문제를 설명하는 코드는 다음과 같습니다.

\documentclass[11pt,twoside,openright]{memoir}

\begin{document}

\begin{KeepFromToc}
\tableofcontents \cleardoublepage
\end{KeepFromToc}

\chapter{Introduction}
This is chapter 1.

\begin{figure}
\caption{Body figure.}
\label{bodyfigure1}
\end{figure}

\appendix
\addcontentsline{toc}{part}{Appendices} 
\part*{Appendices}

\chapter{Appendix A1}
This is A1.

\begin{figure}
\caption{Body figure.}
\label{bodyfigure2}
\end{figure}


\backmatter

\chapter{Dutch Summary}
This is chapter 2.

\begin{figure}
\caption{Body figure.}
\label{bodyfigure3}
\end{figure}


\end{document}

이를 컴파일하면 1장의 첫 번째 그림은 "그림 1.1"로 올바르게 번호가 지정되어 있지만 네덜란드어 요약 장의 그림은 "그림 1"로 번호가 지정되어 있지만 "그림 2.1"로 읽어야 합니다. 이 문제를 해결하는 방법에 대한 아이디어를 주시면 매우 감사하겠습니다!

답변1

다음은 지정된 수의 카운터 값을 저장하고 나중에 다시 주입하는 기능을 갖춘 xassoccnt버전 입니다 .\BackupCountersGroup\RestoreBackupCounterGroup

\documentclass[11pt,twoside,openright]{memoir}

\usepackage{xassoccnt}

\DeclareBackupCountersGroupName{dutchchapter}

\AssignBackupCounters[name=dutchchapter,cascading=true]{chapter}

\makeatletter
\newcommand{\StoreCounterFormats}{%
  \let\latex@@thechapter\thechapter
  \let\latex@@thefigure\thefigure
  \let\latex@@thetable\thetable  
}

\newcommand{\ContinueOldCounting}[2]{%
  \RestoreBackupCounterGroup[backup-id=#1]{#2}%
  \refstepcounter{chapter}%
  \let\thechapter\latex@@thechapter
  \let\thefigure\latex@@thefigure
  \let\thetable\latex@@thetable
}
\makeatother

\AtBeginDocument{%
  \StoreCounterFormats%
}

\begin{document}

\begin{KeepFromToc}
\tableofcontents \cleardoublepage
\end{KeepFromToc}

\chapter{Introduction}
This is chapter 1.

\begin{figure}
\caption{Body figure.}
\label{bodyfigure1}
\end{figure}

%Code to produce some dummy chapters
\makeatletter
\newcount\foocnt
\foocnt\c@chapter
\loop\unless\ifnum\foocnt=11
\advance\foocnt by 1
\chapter{Dummy chapter \the\foocnt}
\repeat
\makeatother
%End of dummy chapters production

% Make a backup of the state!
\BackupCounterGroup[backup-id=beforeappendices]{dutchchapter}

\appendix
\addcontentsline{toc}{part}{Appendices} 
\part*{Appendices}

\chapter{Appendix A1}
This is A1.

\begin{figure}
\caption{Body figure.}
\label{bodyfigure2}
\end{figure}


\backmatter

% Restore the old state
\ContinueOldCounting{beforeappendices}{dutchchapter}
\chapter{Dutch Summary}
This is chapter \thechapter

\begin{figure}
\caption{Body figure.}
\label{bodyfigure3}
\end{figure}


\end{document}

여기에 이미지 설명을 입력하세요

나는 다가오는 릴리스 중 하나에 \the....매크로를 저장할 가능성을 추가하려고 생각하고 있습니다 .xassoccnt

답변2

빠른 해결 방법은 다음과 같습니다.

\chapter{Dutch Summary}
\setcounter{chapter}{11}
\refstepcounter{chapter}
\renewcommand\thechapter{\arabic{chapter}}
\renewcommand\thefigure{\thechapter.\arabic{figure}} % for figures
\renewcommand\thetable{\thechapter.\arabic{table}} % for tables

관련 정보