重新定义 \L 和 hyperref

重新定义 \L 和 hyperref

当我尝试重新定义\L为时\Lambda,似乎被撤消hyperref,收到警告Command \L invalid in math mode,结果是抛光Ł。

\documentclass{article}

\usepackage{amsmath}
\renewcommand{\L}{\Lambda}
\usepackage{hyperref}

\begin{document}
$\L$
\end{document} 

答案1

您可以在加载 hyperref 后重新定义它:

\usepackage{amsmath}
\usepackage{hyperref}
\renewcommand{\L}{\Lambda}

pd1enc.def(PDFDocEncoding 定义文件) 和puenc.def(PDF Unicode 定义文件)都定义\L

  • pd1enc.def:\DeclareTextCommand{\L}{PD1}{\225}% U+0141
  • puenc.def: \DeclareTextCommand{\L}{PU}{\81\101}% U+0141

如果您稍后进行重新定义,即在加载 hyperref 之后,您的定义将覆盖先前的定义。

这里的问题表明,最好尝试使用唯一名称,即使它们更长。简短和常用的名称通常已被使用。此外,您不需要丢失\Lhyperref 带来的。虽然它只是一个\L,但我解释这一点是因为类似的事情可能发生在您可能需要的其他宏上。

相关内容