与Tikz一起评论的独立评论方程式的最佳实践

与Tikz一起评论的独立评论方程式的最佳实践

我正在写一篇文档,其中有一些我要评论的方程式hf-tikz包注释的方程式。它需要两个 LaTeX 编译才能获得正确的坐标并将所有内容绘制在正确的位置。查看如何用一个方程式制作独立文档?我已经能够standalone用我的公式创建一个文件。但我不知道将其包含在主文档中的最佳方法是什么。

此外,我想知道是否可以保留字体和尺寸,因此插入的方程式看起来像是主要文档。

这是我独立方程之一的一个示例:

\documentclass[preview]{standalone}
\usepackage[utf8]{inputenc}

\usepackage{amsmath,amsfonts,amssymb} 
\usepackage{tikz}
\usetikzlibrary{calc}
\usepackage[customcolors]{hf-tikz}

\begin{document}
\vspace*{10mm}
\begin{equation*}
\begin{split}
 4x^2 + 12x + 9 & = \tikzmarkin{a1}(0.05,-0.2)(-0.05,0.4)(2x)^2 \tikzmarkend{a1} + 2\cdot \tikzmarkin{a2}(0.05,-0.2)(-0.05,0.4)(2x)\tikzmarkend{a2} \cdot \tikzmarkin{a3}(0.05,-0.2)(-0.05,0.4)3\tikzmarkend{a3} + \tikzmarkin{a4}(0.05,-0.2)(-0.05,0.4)3^2\tikzmarkend{a4} \\[6ex]
 & = (\,\, \tikzmarkin{a9}2x \tikzmarkend{a9}+ \tikzmarkin{a10} 3\tikzmarkend{a10} \,\,)^2
\end{split}
\end{equation*}

\begin{tikzpicture}[remember picture,overlay]% adjust the shift from "col" to move the position of the annotation
\coordinate (a5) at ($(a1)+(0.5,0.6)$);
\node[align=left,above] at (a5) {\large$a^2$};
\path[-stealth,red,draw] (a5) -- ($(a1)+(0.5,0)$);

\coordinate (a6) at ($(a2)+(0.4,0.6)$);
\node[align=left,above] at (a6) {\large$a$};
\path[-stealth,red,draw] (a6) -- ($(a2)+(0.4,0)$);

\coordinate (a7) at ($(a3)+(0.15,0.6)$);
\node[align=left,above] at (a7) {\large$b$};
\path[-stealth,red,draw] (a7) -- ($(a3)+(0.15,0)$);

\coordinate (a8) at ($(a4)+(0.2,0.6)$);
\node[align=left,above] at (a8) {\large$b^2$};
\path[-stealth,red,draw] (a8) -- ($(a4)+(0.2,0)$);

\coordinate (a11) at ($(a9)+(0.3,0.3)$);
\node[align=left,above] at (a11) {\large$a$};
\path[-stealth,red,draw] (a11) -- ($(a9)+(0.3,0)$);

\coordinate (a12) at ($(a10)+(0.2,0.3)$);
\node[align=left,above] at (a12) {\large$b$};
\path[-stealth,red,draw] (a12) -- ($(a10)+(0.2,0)$);
\end{tikzpicture}

\end{document}

更新以澄清我不希望将独立文件作为原始 tex 包含在内,因为我可能会在其他方程式中重复使用一些坐标名称。以下不起作用,因为我没有在主序言中加载所需的包。

\documentclass{article}
\usepackage{standalone}
\begin{document}
\includestandalone{my-standalone-file}
\end{document}

答案1

standalone 包裹允许使用该subpreambles选项自动将子文件的序言导入主文档。但是,如果您有多个子文件的序言相互冲突,您将会遇到问题。

如果您希望在主文档和所有子文件(或仅所有子文件)中有一个通用前导码,那么只需将通用前导码代码放入单独的.tex文件中,并将\input其放在前导码的所有文件中。

相关内容