
Используя \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}
}
решает проблему. В чем проблема, какие команды затронуты и есть ли простое решение проблемы в целом?