您的位置:首页 > 其它

使用宏包cleveref实现自动的引用

2016-02-18 16:38 661 查看

使用宏包cleveref实现自动的引用

本文翻译自:http://www.howtotex.com/packages/automatic-clever-references-with-cleveref/

最近我遇到了一个LaTeX宏包,并且这个宏包节约了我很多的时间,宏包的名字是:
cleveref
。这个宏包非常容易上手使用,因此我将立刻开始介绍宏包的使用方法。首先,注意:
hyperfer
提供了一些机器相似的自动引用指令,但是在我眼里,
cleveref
包更加的精致,使用更加方便


安装

一如既往,这个宏包通过命令
\usepackage{cleveref}
命令引入,如果在你的文档中,你不得不这样写引用
figure ~\ref{···}
,那么你可以使用
\cref{···}
来实现。宏包
cleveref
将自动检测你的引用究竟是figure环境、equation环境、table环境等。上面的引用显示的格式是:fig.图片的标签、eq.公式的标签。那么我们想要使用Equation这样的标记作为前缀呢?我们想要自定义前面显示的名字呢?那么我们想要一次引用多个文件呢(比如同时引用图片、公式和图表)?后面讲解这些问题。

默认的前缀中首字母大写

目前我所知道的,仅仅是
fig.
eq.
等的情况,那么有时我们的引用会是整段的开始,那么英文文章要求首字母必须要大写,此时我们是不是不能使用这个宏包呢?答案是否定的。出于其他种种方面的原因(在原文中并没有提到这些具体的原因),不得不将首字母大写,这样做到底是对还是错?或者这看起来很丑陋,但是不管怎样,你可以使用
\Cref{···}
代替
\cref
。实现的效果是:
Equation 图片的标签
注意:中间并没有使用英文状态下的句号.去连接

多个引用

另外在
cleveref
宏包的引用时,允许在一个引用命令中同时引用多个不同的公式、图、表等。例如
\cref{eq1,eq2}
,他将会显示
eq.(1)and(2)
,但是这还不是多个引用的全部,当引用不同的环境,比如
\cref{fig1,tab2,eq3}
时,这个宏包将会自动的打印正确的名字和正确的引用。

编辑引用的名字

在使用
\cref
时,其实我想要让它写成
equation.
的形式,而不是
eq.
,在宏包
cleveref
中也是很容易实现的,将下面的代码写入到导言区中:

\crefname{equation}{equation}{equations}


在命令
\crefname{·}{·}{·}
中的第一个参数的含义是引用的类型(equation、table、figure、section等),第二个参数包含的单词,当只有一个引用时将会被输出,当有多个引用是第三个参数将会被输出。在中文情况下:第二个参数和第三个参数可以是汉字,如:
\crefname{equation}{公式}{公式}


更多

如果你想了解关于这个包更多的内容,但是我觉得上面的内容就足够了,那么请你参照其官方文档:http://ctan.mackichan.com/macros/latex/contrib/cleveref/cleveref.pdf

[b]联系我[/b]

如果大家对我所研究的问题感兴趣,或者需要与我联系,请在下方扫描我的微信二维码添加好友:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  latex 工具