答案1
这是一种方法,摘自并改编自nuc 包。
\documentclass[10pt,a4paper]{article}
\usepackage{ifthen}
\newcommand{\nuc}[3]{\ensuremath{{}^{#2}_{#3} \textrm{#1}}}
\begin{document}
$ \nuc{X}{A}{Z} \rightarrow \nuc{Y}{A-a}{Z-z} + \nuc{p}{a}{z} $
\end{document}
答案2
您可以\nuc
使用 TeX 原语定义宏:
\def\nuc#1#2#3{\vcenter{\baselineskip=1.7ex\halign{\hfil##\cr$\nucstyle{#2}$\cr$\nucstyle{#3}$\cr}}{\rm#1}}
\def\nucstyle{\scriptstyle\rm}
Test:
$$
\nuc{X}{A}{Z} \rightarrow \nuc{Y}{A-a}{Z-z} + \nuc{p}{a}{z}
$$
答案3
\ch
如果要使用里面的东西chemmacros
,你还需要做更多的工作。
\documentclass{article}
\usepackage{chemmacros}
\usepackage{amsmath}
\ExplSyntaxOn
\NewDocumentCommand{\Isotope}{mmm}
{
\nicolas_isotope:nn { #1 } { #2 } \ensuremath{ \mathrm{#3} }
}
\tl_new:N \l__nicolas_isotope_sup_tl
\tl_new:N \l__nicolas_isotope_sub_tl
\box_new:N \l__nicolas_isotope_sup_box
\box_new:N \l__nicolas_isotope_sub_box
\dim_new:N \l__nicolas_isotope_wd_dim
\cs_new_protected:Nn \nicolas_isotope:nn
{
\group_begin:
% override the substitutions made by chemformula
\cs_set:Nn \chemformula_single_bond: { - }
\cs_set:Nn \chemformula_triple_bond: { + }
\hbox_set:Nn \l__nicolas_isotope_sup_box { $\scriptstyle\mathrm{#1}$ }
\hbox_set:Nn \l__nicolas_isotope_sub_box { $\scriptstyle\mathrm{#2}$ }
\dim_set:Nn \l__nicolas_isotope_wd_dim
{
\dim_max:nn
{ \box_wd:N \l__nicolas_isotope_sup_box }
{ \box_wd:N \l__nicolas_isotope_sub_box }
}
\ensuremath
{
\sp{\makebox[\l__nicolas_isotope_wd_dim][r]{\box_use:N \l__nicolas_isotope_sup_box}}
\sb{\makebox[\l__nicolas_isotope_wd_dim][r]{\box_use:N \l__nicolas_isotope_sub_box}}
}
\group_end:
}
\ExplSyntaxOff
\begin{document}
\[
\ch{\Isotope{A}{Z}{X} -> \Isotope{A-a}{Z-z}{X} + \Isotope{a}{z}{p}}
\]
\[
\Isotope{A-a}{Z-z}X
\]
\end{document}
答案4
使用isotope
包。
\documentclass[a4paper,12pt]{article}
\usepackage{isotope}
\begin{document}
$\isotope[\mathrm A][\mathrm Z]{\mathrm X}\to \isotope[\mathrm{A-a}][\mathrm{Z-z}]{\mathrm Y}+\isotope[a][z]{\mathrm p}$
\end{document}
或tensor
包:
\documentclass[a4paper,12pt]{article}
\usepackage{tensor}
\begin{document}
$\tensor*[^{\mathrm A}_{\mathrm Z}]{\mathrm{X}}{}\to \tensor*[^{\mathrm{A-a}}_{\mathrm{Z-z}}]{\mathrm Y}{}+\tensor*[^{a}_{z}]{\mathrm p}{}$
\end{document}