我正在使用 XeLaTeX 和 Linux Libertine(使用 fontspec)以及旧式数字。但是,我想在内衬数字中设置方程式数字(使用amsmath
's \eqref
)。这不起作用:
\renewcommand{\eqref}[1]{\textup{\Lpnum{\tagform@{\ref{#1}}}}}
\def\Lpnum#1{{\addfontfeatures{RawFeature=+lnum;+pnum;-tnum;-onum}#1}}
在其他情况下,\Lpnum
宏确实有效。有什么想法吗?
答案1
\tagform@=macro:
#1->\maketag@@@ {(\ignorespaces #1\unskip \@@italiccorr )}.
l.5 \show\tagform@
? > \maketag@@@=macro:
#1->\hbox {\m@th \normalfont #1}.
l.6 \show\maketag@@@
所以你可能想颠倒一下
\Lpnum{\tagform@{
到
\tagform@{\Lpnum{
这样您就可以选择实际使用的字体。