hyperref 的 pagebackref、modroman 和 thebibliography 存在问题

hyperref 的 pagebackref、modroman 和 thebibliography 存在问题

关注 @yiannis-lazarides 的评论这里之后,我决定将该modroman包用于我的前言部分。

在我的实际项目中我没有那么多参考,因此决定使用该thebibliography环境。

问题是我也在使用启用了hyperrefpagebackrefs选项的设备,这给了我一些非常奇怪的警告;由于警告而不奇怪本身,而是因为它发生的时间(这让我很困惑)。

警告本身是:

name{page.xiij} 已被引用但不存在,已由固定名称替换

当 LaTeX 排版有问题的 pagebackrefs 时会引发此问题。

以下是一个最小的工作示例(进一步执行警告):

\documentclass{book}
\usepackage[pagebackref]{hyperref}
\usepackage{modroman}
\begin{document}
  \frontmatter
  \renewcommand{\thepage}{\texorpdfstring{\modroman{page}}{\roman{page}}}
  \setcounter{page}{10}
  Lorem ipsum dolor sit amet\cite{bib}, consectetur adipiscing elit.\clearpage
  Lorem ipsum dolor sit amet\cite{bib}, consectetur adipiscing elit.\clearpage
  Lorem ipsum dolor sit amet\cite{bib}, consectetur adipiscing elit.\clearpage
  Lorem ipsum dolor sit amet\cite{bib}, consectetur adipiscing elit.\clearpage
  Lorem ipsum dolor sit amet\cite{bib}, consectetur adipiscing elit.\clearpage
  Lorem ipsum dolor sit amet\cite{bib}, consectetur adipiscing elit.\clearpage
  Lorem ipsum dolor sit amet\cite{bib}, consectetur adipiscing elit.\cleardoublepage
  \begin{thebibliography}{9}
    \bibitem{bib}
      A.~N.~Author.
      Some title here.
      \emph{Another one here}, (12):3--5,
      September 1990.

  \end{thebibliography}
\end{document}

有人有什么想法吗?:)

答案1

问题是超链接\modroman{page}在开展业务时使用两种不同的表现形式,当和不同时就会不同步\roman{page}

错误\renewcommand{\thepage}{\modroman{page}}不显示;您还会xiij在书签中遇到此错误,但这似乎不是什么大问题。幸运的是,\modroman它完全可扩展。

相关内容