Ссылка на первый рисунок в приложении ведет к первому рисунку в основном тексте.

Ссылка на первый рисунок в приложении ведет к первому рисунку в основном тексте.

Я хочу, чтобы номеру фигур в приложении предшествовала буква A. Конечно, я хочу, чтобы их нумерация начиналась с 0, а не с того, какой был номер последней фигуры в основной части.

Я стараюсь делать это следующим образом:

\setcounter{figure}{0}

\appendix

\renewcommand\thefigure{A\arabic{figure}} 

Затем я маркирую каждую фигуру таким же образом, как и основную, например:

\caption{\label{fig:appendix_bird}}

Когда я делаю ссылку

Fig. \ref{fig:appendix_bird}

в тексте он печатается правильно Fig. A1, как и должен, но когда я нажимаю на цифру, он перенаправляет меня на первую цифру основного текста.

Если я удаляю \setcounter{figure}{0}, то, нажав кнопку , я действительно отправляюсь в приложение, но нумерация рисунков является просто продолжением нумерации основного текста.

Как я могу решить эту проблему?

решение1

hyperrefиспользует \theH<cntr>как хук гиперссылки для каждой гиперссылки на счетчик <cntr>. Так, для figure, \thefigureпечатает фактический счетчик цифр, в то время как \theHfigureуправляет гиперссылкой. Если последний не является уникальным, вы получите следующий тип предупреждения в вашем .logфайле:

[1{c:/texlive/2019/texmf-var/fonts/map/pdftex/updmap/pdftex.map}предупреждение pdfTeX (ext4): место назначения с таким же идентификатором (name{figure.1}) уже используется, дубликат игнорируется

Поэтому убедитесь, что если вы повторно используете элементы документа (в данном случае figures), вы также обновляете \theH<cntr>представление, чтобы оно различало исходные и повторно используемые части. Для вас это достигается с помощью

\appendix
\setcounter{figure}{0} % Restart figure numbering
\renewcommand{\thefigure}{A\arabic{figure}}% Figure counter representation
\renewcommand{\theHfigure}{A\arabic{figure}}% Hyperref figure hyperlink hook

Связанный контент