更新:
或者你可以为 TeX 的所有部分添加圆角。
\documentclass{beamer}
\usepackage{amsmath}
\usepackage{graphicx}
\usepackage{tikz}
%
\newcommand{\thickfrac}[2]{\genfrac{}{}{1.pt}{0}{#1}{#2}}
\newcommand\bigfrac[3][1.0pt]{%
{\thickfrac{\hspace{#1}#2\hspace{#1}}{\hspace{#1}#3\hspace{#1}}}}
\let\oldfrac\frac
\let\frac\bigfrac
%
\begin{document}
\begin{frame}
\[\frac{a+b+c}{a-b-c}\]
\end{frame}
\end{document}
答案1
如果您使用 LuaTeX,您可以通过自定义process_rule
回调来实现这一点。\mathrulesmode=1
设置后,这会影响 TeX 在数学模式中生成的所有规则和“用户规则”(一种在普通文档中不会出现的特殊规则类型)。
\documentclass{beamer}
\usepackage{amsmath}
\directlua{
luatexbase.add_to_callback('process_rule', function(r, h, v)
print(r, h, h)
h, v = 100 * h / tex.sp'100bp', 100 * v / tex.sp'100bp'
print(h, v)
if h > 8 * v then
pdf.print('direct', string.format('[] 0 d 1 J \csstring\%.5f w 0 \csstring\%.5f m \csstring\%.5f \csstring\%.5f l S', v, v/2, h, v/2))
elseif v > 8 * h then
pdf.print('direct', string.format('[] 0 d 1 J \csstring\%.5f w \csstring\%.5f 0 m \csstring\%.5f \csstring\%.5f l S', h, h/2, h/2, v))
pdf.print('direct', string.format('[] 0 d 1 J \csstring\%.5f w 0 0 m 0 \csstring\%.5f l S', h, v))
else
pdf.print('direct', string.format('1 j \csstring\%.5f w 0 0 \csstring\%.5f \csstring\%.5f re f', math.max(h, v)/8, h, v))
end
end, 'rounded_rules')
}
\mathrulesmode=1
\begin{document}
\[\frac{\sqrt{a}+b+c}{a-b-c}\]
\end{document}