如何在align環境中正確格式化tikzpicture環境

如何在align環境中正確格式化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單一方程式。

在此輸入影像描述

相關內容