LaTeX中加入包hyperref出现的错误之解决

73 篇文章 0 订阅
72 篇文章 3 订阅

在论文写作中为每个目录项或者其他类型的引用项加上超链接可以快速帮助自己查看和修改论文,尤其是当论文比较长的时候。这适用于论文初稿时,当论文定稿后,可根据需求与否,再决定是否继续适用这种类型的超链接。本文要讲的是在使用包hyperref建立上述超链接时出现的一个错误,及该错误的解决方法。本文对没有过多LaTeX使用经验的人来说,是很有帮助的。

1 问题描述

1.1 LaTeX的环境

  • LATEX 的运行环境如下图:
    这里写图片描述

  • 使用的documentclass为scrbook

1.2 出现问题

再原来文档内容的基础上,在preamble的最后加上下面指令:

%----back reference the citation
%    最好放在所以包的最后
\usepackage[backref]{hyperref}
%----

采用xelatex编译后出现的错误提示为:

(c:/texlive/2015/texmf-dist/tex/latex/base/omscmr.fd) [4]
Runaway argument?
{\@firstoffive }\fi ), so all elements of the truth table for $\sim P\ETC.
! Paragraph ended before \Hy@setref@link was complete.
< to be read again >
\par
l.95
?

2 解决办法

遇到此问题,应该删除主文件目录下的aux文件,该文件的名称与documentclass所在的文件名一致,对于本文例子,是如下图中椭圆形圈定的文件:
这里写图片描述

删除文件后,再次使用xelatex连续两次编译tex文件1,即可看到我们需要的结果,首先看目录项的结果:
这里写图片描述
再来看论文引用项和其他引用项的结果:
这里写图片描述

至于为什么会出现这个问题,需要我进一步的探求。


  1. 编译一次不会看你想要的结果。使用 LATEX 的时候,所有出现交叉引用 (cross-reference)的地方,都要连续编译2次才能看到最终的结果。
  • 14
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值