问题

当使用 hyperref 宏包时,在标题中使用 \bm 为数学符号加粗会出现错误

\documentclass{article}
\usepackage{bm}
\usepackage{hyperref} \begin{document} \section{$\bm{x^2}$} \end{document}

报错信息为

ERROR: TeX capacity exceeded, sorry [input stack size=5000].

原因是,使用 hyperref 创建的书签信息中不能含有特殊格式。

解决方法

有如下的几种解决方法

  1. 使用标题的可选项
    \section[$x^2$]{$\bm{x^2}$}
  1. 使用 hyperref\texorpdfstring 命令
    \section{\texorpdfstring{$\bm{x^2}$}{$x^2$}}
  1. 使用 hyperref\pdfstringdefDisableCommands 命令抑制命令作用在PDF字符串上
    \documentclass{article}
\usepackage{bm}
\usepackage{hyperref}
\pdfstringdefDisableCommands{%
\renewcommand*{\bm}[1]{#1}%
% any other necessary redefinitions
} \begin{document}
\section{$\bm{x^2}$} \end{document}

最后一种方法使用起来比较方便,因为不需要改变正文。


参考信息

LaTeX 标题中使用 \bm 命令与 hyperref 的冲突的更多相关文章

  1. HTML5中的execCommand命令

    HTML5中的execCommand命令 在html5中,可以通过execCommand方法来运行一条命令,每一条命令都将对用户通过鼠标所选取的内容执行一些操作. 1. execCommand方法 浏 ...

  2. WPF MVVM模式中,通过命令实现窗体拖动、跳转以及显隐控制

    原文:WPF MVVM模式中,通过命令实现窗体拖动.跳转以及显隐控制 在WPF中使用MVVM模式,可以让我们的程序实现界面与功能的分离,方便开发,易于维护.但是,很多初学者会在使用MVVM的过程中遇到 ...

  3. Linux中通过grep命令检索文件内容和指定内容前后几行

    原文链接: https://www.linuxidc.com/Linux/2017-11/148390.htm Linux系统中搜索.查找文件中的内容,一般最常用的是grep命令,另外还有egrep命 ...

  4. linux shell 中的sleep命令

    开始还以为是这样的语法: sleep(1), 后面发现是: linux shell 中的sleep命令 分类: LINUX 在有的shell(比如linux中的bash)中sleep还支持睡眠(分,小 ...

  5. 在脚本中使用sudo命令,将密码保存在脚本中,不需要手动输入密码

    在脚本中使用sudo命令,将密码保存在脚本中,不需要手动输入密码. #!/bin/bash echo 'xxx密码xxx'|sudo -S service mysql start echo 'xxx密 ...

  6. 在程序中执行shell命令

    在linux系统下的操作中我们会经常用到shell命令来进行,一开始学习进程的时候对于shell命令也进行了思考,认为shell命令就是一个进程的外壳,经过了后来的学习对于这一点也有了更多的认识. 用 ...

  7. 常见linux命令释义(第九天)—— Bash Shell 的操作环境Shell 中的管道命令一些管道命令

    最近好懒好懒.连写文章都写不好了.于是只能写读一点书,记一点读书笔记了.太懒了,没办法.慢慢恢复自己的状态吧. 管道命令仅会处理strandard output 的内容,对于strandard err ...

  8. Linux中的历史命令

    Linux中的历史命令一般保存在用户    /root/.bash_history history 选项 历史命令保存文件夹 选项     -c:清空历史命令     -w :把缓存中的历史命令写入历 ...

  9. Google Chrome浏览器中如何使用命令

    Google Chrome浏览器中如何使用命令 | 浏览:2974 | 更新:2014-02-23 23:12 | 标签:chrome 1 2 3 分步阅读 Google Chrome浏览器有很多的特 ...

随机推荐

  1. Eclipse问题解决方案,不断更新

    执行“software update”时出现:Error retrieving "feature.xml"... 执行“software update”时出现:Error retr ...

  2. BZOJ_1833_[ZJOI2010]_数字计数_(数位dp)

    描述 http://www.lydsy.com/JudgeOnline/problem.php?id=1833 统计\(a~b\)中数字\(0,1,2,...,9\)分别出现了多少次. 分析 数位dp ...

  3. Extend ComboGrid Editors for DataGrid Of JQuery EasyUI

    在JQueryEasyUI中为DataGrid自定义了一个ComboGrid编辑器.具体方法: 自己写一个扩展 $.extend($.fn.datagrid.defaults.editors, { c ...

  4. HTML5实现在线抓拍

    <!DOCTYPE> <html> <head> <meta http-equiv="Content-Type" content=&quo ...

  5. NullableKey:解决Dictionary中键不能为null的问题 zt

    2012-12-29 02:26 by 老赵, 1745 visits 众所周知,.NET中Dictionary的键不能为null,否则会抛出NullReferenceException,这在某些时候 ...

  6. Lua中实现队列(高效方式)

    转自http://www.cnblogs.com/stephen-liu74/archive/2012/06/25/2417894.html 在Lua中实现队列的简单方法是使用table库函数inse ...

  7. 【JS】Beginner3 & 4 & 5 & 6:Maths & Logic & Conditonal & Looping

    1.number operator () * / + - 2.logic make decisions in code compare values to produce a boolean valu ...

  8. HW3.17

    import java.util.Scanner; public class Solution { public static void main(String[] args) { Scanner i ...

  9. HDOJ-ACM1013(JAVA)

    这道题也很简单~主要是将输入转为字符串(存储大数,操作字符数组) 题意: 24 : 2 + 4 = 6  输出6 39 : 3 + 9 = 12 , 1 + 2 = 3 输出3 999: 9 + 9 ...

  10. Eclipse的下载、安装和WordCount的初步使用(本地模式和集群模式)

    包括:    Eclipse的下载 Eclipse的安装 Eclipse的使用 本地模式或集群模式 Scala IDE for Eclipse的下载.安装和WordCount的初步使用(本地模式和集群 ...