以下简单示例在我的计算机上显示了一个损坏的下括号符号。上括号也是如此。有什么想法可以解决这个问题或变通吗?我在 Win10 和 MiKTeX / TeXworks 上运行,安装了更新的软件包和所有已安装的更新。
\documentclass[border=1cm, varwidth=\maxdimen]{standalone}
\usepackage{amsmath}
\usepackage{newtxsf}
\begin{document}
\fontsize{80px}{80px}\selectfont
$\underbrace{n \cdot n \cdot n}_{n}= \Omega$
\end{document}
答案1
该newtxsf
包重新定义了\upbracefill
和\downbracefill
使用字形,而不是像标准 LaTeX 中那样用规则填充括号。不幸的是,这个字形没有存在(并且您会Missing character
在日志文件中发现警告)。
第一个解决方法:保留原始定义。
\documentclass[border=4]{standalone}
\usepackage{fix-cm} % avoid a spurious warning
\usepackage{amsmath}
\let\oriupbracefill\upbracefill
\let\oridownbracefill\downbracefill
\usepackage{newtxsf}
\let\upbracefill\oriupbracefill
\let\downbracefill\oridownbracefill
\begin{document}
$\underbrace{n \cdot n \cdot n}_{n}=\overbrace{n\cdot n\cdot n}$
\end{document}
第二种解决方法:取消注释一行newtxsf.sty
。
\documentclass[border=4]{standalone}
\usepackage{fix-cm} % avoid a spurious warning
\usepackage{amsmath}
\usepackage{newtxsf}
\makeatletter
\re@DeclareMathSymbol{\br@cext}{\mathord}{largesymbolsTXA}{32}
\makeatother
\begin{document}
$\underbrace{n \cdot n \cdot n}_{n}=\overbrace{n\cdot n\cdot n}$
\end{document}