\displaystyle 中的 \nicefrac 或 \xfrac

\displaystyle 中的 \nicefrac 或 \xfrac

如何在不减小字体大小的情况下获取\nicefrac\xfrac在 中工作?\displaystyle

答案1

作为替代方案(因为\nicefrac\sfrac似乎无法调整以表示显示样式中的数字)......

调整我的答案修改内联文本和指数的分数宏,如果在文本模式下调用,这还会将分子和分母设置为文本,如果在数学模式下调用,则设置为数学。

\documentclass{article}
\usepackage{graphicx}

\newcommand{\altfrac}[2]{\ifmmode\def\tmp{$}\else\def\tmp{}\fi\mbox{%
    {\raisebox{.24\ht\strutbox}{\tmp#1\tmp}}%
    \kern-2.2pt\scalebox{1.6}[1.5]{/}\kern-1.8pt%
    {\tmp#2\tmp}%
    }}

\begin{document}
\parindent 0pt
This is \texttt{altfrac:}\qquad
\altfrac{12}{14} \altfrac{31415}{27182} \altfrac{abc}{def} \altfrac{Foo!}{Bar?}
\altfrac{\#\$\%+/<>=}{?\@[]\textbackslash\_|\{\}§†} 
\[\left(\frac{3x}{2y}\right)^{\altfrac{3}{2}}=\altfrac{\lambda}{2x}\]
\qquad And here is \altfrac{x}{y} versus $\altfrac{x}{y}$\\

\end{document}

在此处输入图片描述

警告:如果在内联模式下使用, 的大小/可能会导致行距暂时调整。虽然可以通过\smash'ing 来消除这种情况\scalebox,但这可能会导致字形重叠。

答案2

使用\Largebefore 可以达到这样的效果:

\text{\Large$\sfrac{1}{10}$}

这不是一个合适的解决方案,而只是一种黑客手段,因为它会产生警告(字体:大小替换......)并且必须手动指定。

这是一个简单的例子:

\documentclass[varwidth,margin=0.5cm]{standalone}
\usepackage{xfrac}

\begin{document}

\begin{itemize}
  \item $\frac{1}{10} =\sfrac{1}{10}$
  \item $\displaystyle\frac{1}{10} = \text{\Large$\sfrac{1}{10}$}$
\end{itemize}

\end{document}

以及相应的输出:

带和不带 \Large 的 sfrac

相关内容