我想要使用来自wasysym
和marvosym
包的符号:
\usepackage{wasysym}
\usepackage{marvosym}
但它给出了一个错误,因为两个包都有命令\CheckedBox
。我不想使用这个命令,但由于两个包都有它,这会让 latex 感到困惑。我怎样才能忽略一个命令来同时使用两个包?
答案1
如果您按照其他顺序加载包,那么一切都会正常工作。
\usepackage{marvosym}
\usepackage{wasysym}
如果你想保持它们当前的顺序,那么以下方法有效
\usepackage{wasysym}
\let\CheckedBox\relax
\usepackage{marvosym}
答案2
作为休斯表示,有时以相反的顺序加载包可以解决问题。但是,如果反转顺序仍然产生冲突,或者由于某种原因,反转顺序不是一种选择,那么当两个包定义相同的符号时,有一个很好的程序可以防止符号名称冲突:加载第一个包,重命名冲突的符号,然后加载第二个包。包\savesymbol
中的命令savesym
可用于此目的;\savesymbol{XXX}
将符号从重命名\XXX
为\origXXX
:
\documentclass{article}
\usepackage{savesym}
\usepackage{wasysym}
\savesymbol{CheckedBox}
\usepackage{marvosym}
\begin{document}
\CheckedBox\qquad\origCheckedBox
\end{document}