Tikzexternalize 和“underset”

Tikzexternalize 和“underset”

使用\tikzexternalize,我發現將 a 包裝起來tikzpicture\underset導致 tikzexteranlize 編譯圖片三次;例如,觀察輸出

\documentclass{scrartcl}
\usepackage{tikz,mathtools}
\usetikzlibrary{external}
\tikzexternalize
\begin{document}
        \[
            \underset{a}{
                \begin{tikzpicture}
                    \draw (0,0) -- (1,1);
                \end{tikzpicture}
            }
        \]
\end{document}

我想這也是為什麼編譯包含許多此類結構(沒有 tikzexternalize)的文檔需要相對較長的時間的原因。我觀察到替換\underset

\newsavebox\undersetbox
\newcommand{\boxedunderset}[2]{
    \savebox\undersetbox{#2}
    \underset{#1}{\usebox \undersetbox}
}

解決了問題。這是什麼問題,哪些命令受到影響,以及是否有更簡單的方法可以更普遍地解決該問題?

相關內容