mdframed 内未显示脚注符号

mdframed 内未显示脚注符号

我想更改 mdframed 中的脚注符号。我发现有一个非常简单的解决方案,在这个非常有帮助的答案同样的问题。

我应用了它并且它起作用了,但是符号、星号、匕首等与文本对齐,而不是像脚注通常那样凸起。

我尝试用 raisebox 饲养它们

\documentclass[9pt,twoside,openright,showtrims]{memoir} 
\usepackage{amsmath,amssymb,amsfonts}
\usepackage{mathspec,xltxtra}
\usepackage{url,graphicx}
\usepackage{polyglossia}

\usepackage{geometry}
\usepackage{layouts}
\usepackage{calc}
\usepackage{tablefootnote} 
\usepackage[framemethod=PSTricks,tikz]{mdframed}


\makeatletter
\AtBeginEnvironment{mdframed}{%
\def\@fnsymbol#1{\ensuremath{\ifcase#1\or \dagger\or \ddagger\or
\mathsection\or \mathparagraph\or \|\or **\or \dagger\dagger
\or \ddagger\ddagger \else\@ctrerr\fi}}%
}   
\renewcommand\thempfootnote{\raisebox{.8ex}{\small \fnsymbol{mpfootnote}}}
\makeatother

但我得到了错误。星号在标记中凸起,但我在帧的末尾得到了这个。

在此处输入图片描述

实际上,在我将编号改为符号之前,我也遇到了同样的问题。默认情况下,编号为 a、b、c...,即使这样,它们也没有被提升。

您对如何无错误地提高它们有什么想法吗?

答案1

问题不在于mdframed,而是xltxtra。后者重新定义\textsuperscript(和\textsubscript)以使用真正的高级数字而不是较小字体大小的普通数字。这仅在字体具有可用字形时才可靠地起作用:用 xelatex 加上标?(脚注,natbib)该软件包确实定义了两个命令的带星号的变体,通过它们可以获得原始定义。

由于脚注标记放在了\textsuperscript这里,所以会出现问题。一个解决方案是使用选项加载包no-sscript

\usepackage[no-sscript]{xltxtra}

这将交换定义:\textsuperscript给出原始定义,\textsuperscript*即上级数字的定义。

当然,另一个解决方案就是根本不使用该包。

相关内容