答案1
非常好的 MWE!:-) 我建议您\mathstrut
在必要时使用 --,并辅以\smash[t]
--\smash[b]
和\,
(thinspace)指令来微调符号和字母的位置。
\documentclass[a4paper,12pt]{article}
\usepackage{amsmath} % for \smash[t] and \smash[b] macros
\usepackage[all,cmtip]{xy}
\begin{document}
\xymatrix @R=4pc @C=4pc {
A \ar@{=}|{/}[r]^{a\smash[t]{\mathstrut}} % smashed \mathstrut
\ar[d]_{c\,}|{\subset\mathstrut} % full-height \mathstrut
& B \ar[d]^{\,b}|{\cong\mathstrut} \\ % full-height \mathstrut
C \ar[r]_{d\smash[b]{\mathstrut}}|{\,\cong\,} % smashed \mathstrut
& D ;
}
\end{document}
答案2
我知道你是的忠实粉丝xy
,所以这只是为了与进行比较tikz-cd
。
为箭头命令内使用的特殊标签创建了一种新样式:\arrow[r, "<main label>"{special=<direction>:<secondary label>}]
,其中<direction>
可以提供角度或罗盘方向。
\documentclass{article}
\usepackage{tikz-cd}
\tikzcdset{special/.style={description, label={[label distance=-5pt, font=\scriptsize]#1}}}
\begin{document}
\begin{tikzcd}[sep=1.5cm]
A\arrow[r, equals, "/"{special=90:$a$}]\arrow[d, "\subset"{special=180:$c$}] & B\arrow[d, "\cong"{special=0:$b$}]\\
C\arrow[r, "\cong"{special=270:$d$}] & D
\end{tikzcd}
\end{document}