
使用\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}
}
解決了問題。這是什麼問題,哪些命令受到影響,以及是否有更簡單的方法可以更普遍地解決該問題?