楼主: oliyiyi
2388 1

LaTeX:用 caption 宏包修复浮动体超链接不准的问题 [推广有奖]

版主

泰斗

0%

还不是VIP/贵宾

-

TA的文库  其他...

计量文库

威望
7
论坛币
271951 个
通用积分
31269.3519
学术水平
1435 点
热心指数
1554 点
信用等级
1345 点
经验
383775 点
帖子
9598
精华
66
在线时间
5468 小时
注册时间
2007-5-21
最后登录
2024-4-18

初级学术勋章 初级热心勋章 初级信用勋章 中级信用勋章 中级学术勋章 中级热心勋章 高级热心勋章 高级学术勋章 高级信用勋章 特级热心勋章 特级学术勋章 特级信用勋章

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币

使用 hypcap 宏包修复图标超链接不准的问题。具体来说,是修复了将 \caption 放在\includegraphics 后面,然后在文中对图片进行引用的话,点击超链接后将跳转到图片标题位置而不是浮动体顶部的问题。

之后,shengwenbo 在文后评论说,caption 宏包也能实现这一功能。本文就来介绍,如何使用 caption宏包来实现这一效果。

基本用法

最基本的用法很简单,只需要在加载插图宏包(graphicx)和超链接宏包(hyperref)之余,加载caption 宏包即可。具体来说,代码如下。


12


  1. \documentclass{article}\usepackage{graphicx}\usepackage{hyperref}\usepackage{caption} \usepackage{mwe} % for dummy text\begin{document}\begin{figure}[!htb]\centering\includegraphics[width = 0.6\linewidth]{example-image.jpg}\caption{dummy figure}\label{fig:test}\end{figure}\blindtext\clearpage\blindtext This is the hyper-reference of Figure \ref{fig:test}.\end{document}
复制代码





这样一来,当点击第二页 Figure 之后的「1」之后,就能跳转至图片的开始位置(而不是标题位置)。

细节

caption 宏包用于控制浮动体超链接跳转位置的功能,实际上由宏包选项 hypcap 控制。默认情况下,hypcap = true,即打开这一功能。

除此之外,caption 宏包还提供了 hypcapspace 选项,用来控制浮动体跳转的具体位置。具体来说,hypcapspace 选项接收一个 TeX 长度,跳转的位置则被设置为浮动体开始位置前的该长度;它的默认值为 hypcapspace = 0.5\baselineskip。比如说:


1


2


3


4


5


6


7


8


9


10


11


12


13


14


15


16


17


18



  1. \documentclass{article}\usepackage{graphicx}\usepackage{hyperref}\usepackage[hypcap = true, hypcapspace = 2cm]{caption} \usepackage{mwe} % for dummy text\begin{document}\begin{figure}[!htb]\centering\includegraphics[width = 0.6\linewidth]{example-image.jpg}\caption{dummy figure}\label{fig:test}\end{figure}\blindtext\clearpage\blindtext This is the hyper-reference of Figure \ref{fig:test}.\end{document}
复制代码





优势

相较之前介绍过的 hypcap 宏包,由 caption 宏包完成这项工作,显得更加自然。毕竟,对浮动体标题的操作是一个常见需求,因而加载 caption 宏包很多时候是理所当然的;而 hypcap 宏包则更像是一个补丁。具体到功能上,caption 相较 hypcap 宏包有以下一些优势:

  • hypcap 宏包只支持 LaTeX 自带的 figure 和 table 两个浮动体环境,而 caption 则支持更多。
  • hypcap 宏包不能与 caption 宏包定义的 \captionsetup{type = <type>} + \caption 联用,而caption 对自家定义的宏当然支持良好。

选自:http://liamhuang.me/2015/11/21/using-the-caption-package-tu-justify-the-link-anchor/


二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:LaTeX atex Late ATE APT document article figure 超链接 图片

缺少币币的网友请访问有奖回帖集合
https://bbs.pinggu.org/thread-3990750-1-1.html
沙发
richardgu26 发表于 2016-3-19 08:26:45 |只看作者 |坛友微信交流群

使用道具

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注jltj
拉您入交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-4-19 11:42