在我的论文中,我曾用“帽子”和“格子”来标示几个数学符号。我的导师指出,标准\hat{}, \check{}
标示由于尺寸较大,难以阅读,因此我在 Tikz 中制作了自己的标示。但是,现在 LaTeX 需要几分钟(大约三分钟)才能编译整个文档。
下面是用于定义这些符号的代码。我确实使用了该accents
包。有没有更有效的方法来定义数学符号的自定义重音符号?我猜想每次编译器遇到我的命令时 Tikz 都会运行,这就是导致速度变慢的原因,但我不知道如何避免这种情况。我正在使用 TexMaker 和最新的 Windows MikTex 发行版。
% Some symbols
\newcommand{\myhat}{%
\mathbin{\begin{tikzpicture}[line width = 0.15pt, smooth]
\draw[smooth, fill] (0,0.1ex) -- ({0.5ex - 0.3pt},0.45ex) -- ({0.5ex + 0.3pt},0.45ex) -- (1ex, 0.1ex) -- (0.5ex ,0.4ex) -- (0,0.1ex);
\draw[white](0,0ex) -- (0, 0.1);
\end{tikzpicture}
}}
\newcommand \what [1]{
\accentset{\myhat}{#1}
}
\newcommand{\mycheck}{%
\mathbin{\begin{tikzpicture}[line width = 0.15pt, smooth]
\draw[smooth, fill, rotate = 180] (0,0.1ex) -- ({0.5ex - 0.3pt},0.45ex) -- ({0.5ex + 0.3pt},0.45ex) -- (1ex, 0.1ex) -- (0.5ex ,0.4ex) -- (0,0.1ex);
\draw[white](0,-0.5ex) -- (0, 0);
\end{tikzpicture}
}}
\newcommand \wcheck [1]{
\accentset{\mycheck}{#1}
}
答案1
将 tikz 图片保存在保存箱中。
\newsavebox\myhat
\savebox\myhat{\begin{tikzpicture}...\end{tikzpicture}}
\newcommand\what[1]{\accentset{\mathbin{\usebox\myhat}}{#1}}