在 align* 环境中使用 tikz

在 align* 环境中使用 tikz

我是 TikZ 新手,正在尝试在环境中使用它align*。我采用的方法在环境中有效center,但在环境中无效align。没有错误,但输出不符合预期。

这是我的代码:

\documentclass[12pt]{article}  
\usepackage{amsmath}  
\usepackage{chemformula}  

\makeatletter  
    \newcommand{\tikzmark}[1]{\tikz[overlay,remember picture] \node (#1) {};}  
\makeatother  

\usetikzlibrary{arrows.meta,shapes,positioning,shadows,trees,calc}  

\begin{document}  

Using Center environment;  
\begin{center}  
  \ch{\tikzmark{a} Cu^{2+} + 2 e-} \ch{->}  \ch{\tikzmark{b} Cu} \hspace{2ex}   
        electrons gained by \ch{Cu^{2+}}  
                \tikz[overlay,remember picture]{  
        \draw ($ (a.north) + (0,0.1) $) node[anchor=south] {\tiny $+2$};  
        \draw ($ (b.north) + (0,0.1) $) node[anchor=south] {\tiny $0$};  
     }  
\end{center}  

Using Align environment;  
\begin{align*}  
  \ch{\tikzmark{a} Cu^{2+} + 2 e-} &\ch{->}  \ch{\tikzmark{b} Cu} \qquad  
    \text{electrons gained by \ch{Cu^{2+}}}  
                \tikz[overlay,remember picture]{  
        \draw ($ (a.north) + (0,0.1) $) node[anchor=south] {+2};  
        \draw ($ (b.north) + (0,0.1) $) node[anchor=south] {0};  
     }  
\end{align*}  

\end{document}  

PS 我想做的是放置似乎出现在化学方程式中原子符号“左上角”的文本。此文本的位置应该在原子符号上方。我正在使用 chemformula 包编写方程式,并且我想对齐一堆这样的方程式 - 因此需要使用 align*。因此,有两件事:(1) 使用 chemformula 包编写一堆对齐的化学方程式 (2) 使用 TikZ 将文本放置在方程式沿线的某些点上方

答案1

不确定我是否误解了你的问题,但为什么在这种情况下使用 TikZ?如果你想在右边使用指数,你可以像往常一样写它们:

输出

在此处输入图片描述

代码

\documentclass[12pt]{article}  
\usepackage{amsmath}  
\usepackage{chemformula} 
\usepackage{tikz} 

\usetikzlibrary{arrows.meta,shapes,positioning,shadows,trees,calc}  

\newcommand{\tikzmark}[1]{\tikz[overlay, remember picture] \node (#1) {};}  

\begin{document}  

Using Center environment;  
\begin{center}  
  \ch{\tikzmark{a} Cu^{2+} + 2 e-} \ch{->}  \ch{\tikzmark{b} Cu} \hspace{2ex}   
        electrons gained by \ch{Cu^{2+}}  
                \tikz[overlay,remember picture]{  
        \draw ($ (a.north) + (0,0.1) $) node[anchor=south] {\tiny $+2$};  
        \draw ($ (b.north) + (0,0.1) $) node[anchor=south] {\tiny $0$};  
     }  
\end{center}  

Using Align environment;  
\begin{align*}  
  \ch{^{\tiny +2}Cu^{2+} + 2 e-} &\ch{->}  \ch{^{\tiny 0}Cu} \qquad  
    \text{electrons gained by \ch{Cu^{2+}}}  
\end{align*}  

\end{document}  

相关内容