答案1
欢迎!tikz-cd
这个相当简单。
\documentclass{article}
\usepackage{tikz-cd}
\begin{document}
\begin{tikzcd}
A \arrow[r,shift left=0.75ex] \arrow[r,draw=none,"\sim" marking]&
B \arrow[l,shift left=0.75ex]\arrow[r,shift left=0.75ex]
\arrow[r,,draw=none,"\scriptstyle\perp" marking]&
C \arrow[l,shift left=0.75ex]\\
C \arrow[r,"\scriptstyle\perp" {inner sep=0.1ex,rotate=180},
"\scriptstyle\perp"' {inner sep=0.1ex,rotate=180}] \arrow[r,shift left=1.5ex] &
D \arrow[l,shift left=1.5ex] & \\
\end{tikzcd}
\end{document}
或者使用更小的\perp
符号来使箭头彼此更靠近。
\documentclass{article}
\usepackage{tikz-cd}
\begin{document}
\begin{tikzcd}
A \arrow[r,shift left=0.4ex] \arrow[r,draw=none,"\scriptstyle\sim" marking]&
B \arrow[l,shift left=0.75ex]\arrow[r,shift left=0.4ex]
\arrow[r,draw=none,"\scriptscriptstyle\perp" marking]&
C \arrow[l,shift left=0.75ex]\\
C \arrow[r,"\scriptscriptstyle\perp" {inner sep=0.1ex,rotate=180},
"\scriptscriptstyle\perp"' {inner sep=0.1ex,rotate=180}]
\arrow[r,shift left=1.1ex] &
D \arrow[l,shift left=1.1ex] & \\
\end{tikzcd}
\end{document}
或者用弯曲的箭。
\documentclass{article}
\usepackage{tikz-cd}
\begin{document}
\begin{tikzcd}
A \arrow[r,bend left=25,shift left=0.2ex] \arrow[r,draw=none,"\sim" marking]&
B \arrow[l,bend left=25,shift left=0.2ex]\arrow[r,bend left=25,shift left=0.2ex]
\arrow[r,draw=none,"\perp" marking]&
C \arrow[l,bend left=25,shift left=0.2ex]\\
C \arrow[r,"\perp" {inner sep=0.3ex,rotate=180},
"\perp"' {inner sep=0.3ex,rotate=180}]
\arrow[r,bend left=25,shift left=0.2ex] &
D \arrow[l,bend left=25,shift left=0.2ex] & \\
\end{tikzcd}
\end{document}