该\ref
命令通常指向 引用的图形/表格/等\label
。但是在 tufte-book 文档类中,这似乎不起作用:
\documentclass[]{tufte-book}
\begin{document}
\section{Newsection}
Some text here.
\clearpage
\begin{figure*}
\rule{1in}{1in}
\caption{Figure 1}
\label{fig:f1}
\end{figure*}
Please see Fig.~\ref{fig:f1} for more information.
\end{document}
相反,引用只是悄悄地指向上面的节标题,没有给出错误。我尝试将命令\label
放在不同的地方或使用不同的图形环境(figure*
、figure
、marginfigure
)。我正在使用该pdflatex
命令编译上述示例,我有pdfTeX 3.14159265-2.6-1.40.17 (TeX Live 2016)
分发版。
有办法解决这个问题吗?
答案1
这是扩展评论...
使用您的 mwe,我可以重现您在问题中报告的问题。为了更好地查看,您文档中的引用运行良好,我稍微扩展了您的代码以:
\documentclass[justified]{tufte-book}
\usepackage{microtype}
\usepackage{graphicx}
\hypersetup{colorlinks=true,
linkcolor={blue},
breaklinks=true}
\usepackage{lipsum}
%---------------- show page layout. don't use in a real document!
\usepackage{showframe}
\renewcommand\ShowFrameLinethickness{0.15pt}
\renewcommand*\ShowFrameColor{\color{red}}
%---------------------------------------------------------------%
\begin{document}
\section{First section}
\lipsum[11]
\section{Second section}
\lipsum[12]
\begin{figure}
\centering
\includegraphics[width=0.5\linewidth]{example-image-duck}
\caption{Caption of the figure 1}
\label{fig:f1}
\setfloatalignment{b}
\end{figure}
\section{Third section}
The basic idea is illustrated on the Fig.~\ref{fig:f2}.
\lipsum[13-14]
\begin{figure*}
\includegraphics[width=\linewidth]{example-image-duck}
\caption{Caption of the figure 2}
\label{fig:f2}
\end{figure*}
Please see Fig.~\ref{fig:f1} and Fig.~\ref{fig:f2} for more information.
\end{document}
所有扩展都不会影响超链接的工作。一切都按预期工作。我使用 pdfLaTeX 引擎在最近的 MikTeX 上测试了此代码。然而,我很确定这latex
也应该适用于其他不是那么新的安装。请测试我的 mwe 并让我知道它是否按预期工作。
答案2
我的问题与 tufte 无关,很抱歉在这里询问。
我使用 Adobe Reader 打开了 Windows 机器上的 PDF,所有链接都正常工作。只有在我的 Mac(预览版)上,链接断开了。
我可以在某处开始一个新话题,但现在我或多或少感到高兴。