如何在对齐环境中正确格式化 tikzpicture 环境

如何在对齐环境中正确格式化 tikzpicture 环境

我试图弄清楚如何在对齐环境中使用 tikzpicture 环境,而我找到的最接近答案的是这里:在对齐或聚集环境中使用 tikzpicture 矩阵。但是,这并不能回答我的问题,因为它涉及到 tikzlibrary 的使用,并且具体围绕矩阵。

经过一番研究,并查看了图 3.20 的代码后,https://tikz.org/examples/chapter-03-drawing-positioning-and-aligning-nodes/我设法做到了以下几点:

我自己使用环境的尝试

这是MWE:

\documentclass{article}

\usepackage{amsmath, tikz}

\begin{document}

\begin{align*}
x_1 = \frac{
\tikz[baseline=(label.base)] \node[circle, draw=red, text=blue, inner sep=1pt, very thick](label){0};
^2-2}{\tikz[baseline=(label.base)] \node[circle, draw=red, text=blue, inner sep=1pt, very thick](label){0};
^2-2\cdot \tikz[baseline=(label.base)] \node[circle, draw=red, text=blue, inner sep=1pt, very thick](label){0};
}
\end{align*}

\begin{align*}
\begin{tikzpicture}[rcirc/.style={circle, draw=red, text=blue, very thick, inner sep=1pt}, baseline=(label.base)]
    \(x_1 = \frac{\tikz \node[rcirc](label){0};^2-2}{\tikz \node[rcirc](label){0};^2-2\cdot \tikz \node[rcirc](label){0};}\)
\end{tikzpicture}
\end{align*}

\end{document}

如您所见,手动插入所有命令时,它工作得很好。只有当我尝试利用 tikzpicture 环境使该过程“自动化”时,我才会遇到格式问题。是否可以修复它,以便我可以使用 tikzpicture 获得与不使用 tikzpicture 相同的结果?我更喜欢简单的解决方案,因为我对 LaTeX 还比较陌生,并且试图首先基于简单性建立一个坚实的基础,然后再进行扩展,但如果除了复杂的解决方案之外没有其他选择,那就这样吧。

编辑:我注意到 tikzpicture 基本上不支持嵌套(有关详细信息,请参阅评论),因此对我的原始问题进行轻微修改是如何创建一个像数学对齐环境一样工作的 tikzpicture 环境并像我提供的第一个示例一样正确格式化它?

答案1

我会定义一个特定的命令:

\documentclass{article}

\usepackage{amsmath, tikz}

\newcommand{\circlednumber}[1]{%
  {\tikz[baseline=(label.base)] \node[circlednumber](label){#1};}%
}
\tikzset{
  circlednumber/.style={circle, draw=red, text=blue, inner sep=1pt, very thick},
}

\begin{document}

\begin{align*}
x_1 &= \frac{\circlednumber{0}^2-2}{\circlednumber{0}^2-2\circlednumber{0}}
\\
x_2 &= \frac{\circlednumber{1}^2-2}{\circlednumber{1}^2-2\circlednumber{1}}
\end{align*}

\end{document}

一般来说,切勿将其align用于单一方程。

在此处输入图片描述

相关内容