Hyperref 无法与跨多页的自定义图形环境配合使用

Hyperref 无法与跨多页的自定义图形环境配合使用

我想使用该hyperref包在文本中以蓝色突出显示引用和 URL(\usepackage[colorlinks,citecolor=blue,urlcolor=blue]{hyperref}),以及稍后使用hyperref将图形引用链接到相应的图形页面。

但是,如果图形/标题较大,我会使用自定义图形环境来处理跨越多页的标题。

当我设置时hyperref package,跨越多页的标题会引发警告

包标题警告:对于此特定的 \caption,选项“hypcap=true”将被忽略。

我如何使用包来协调跨越多个页面的大标题hyperref

这是我的代码:

\documentclass[12pts,openright,twoside]{report}
\usepackage[a4paper,width=150mm,top=25mm,bottom=25mm, bindingoffset=6mm]{geometry}
\usepackage[font={small,sf}, singlelinecheck=false]{caption}
\usepackage{graphicx}
\graphicspath{{./fig/}}
\usepackage{chngcntr}
\counterwithout{figure}{chapter}
\counterwithout{table}{chapter}
\usepackage{natbib}
\bibliographystyle{apa}
\usepackage[nottoc,notlot,notlof]{tocbibind}
\usepackage[colorlinks,citecolor=blue,urlcolor=blue]{hyperref}

\begin{document}

\begin{center}
\includegraphics[width=\textwidth]{fig/chap2-workflow.pdf}
\bigskip
\setbox0\vbox{\makeatletter
\let\caption@rule\relax
\captionof{figure}[My Figure Title.]{Very very large caption}
\global\skip1\lastskip\unskip
\global\setbox1\lastbox
}
\unvbox0
\setbox0\hbox{\unhbox1\unskip\unskip\unpenalty
\global\setbox1\lastbox}
\unvbox1
\vskip\skip1
\label{workflow1}
\end{center}

\end{document}

答案1

警告继续出现在日志中

请参阅标题包文档以获取解释。

如果在那里搜索 hypcap,您将进入描述您的选项的部分。例如,在实际浮动环境之外6.5 hyperref使用\captionsetup\caption而不是:\captionof

\documentclass[12pt,openright,twoside]{report}
\usepackage[font={small,sf}, singlelinecheck=false]{caption}
\usepackage{graphicx}
\usepackage[colorlinks,citecolor=blue,urlcolor=blue]{hyperref}

\begin{document}

\begin{center}
\captionsetup{type=figure}
\includegraphics[width=\textwidth]{example-image}
\caption[My Figure Title.]{Very very large caption}
\label{workflow1}
\end{center}

\end{document}

相关内容