次のコードがあります
\begin{tikzcd}[row sep=tiny]
& (\nu d,\, e)(\bar{b} \langle e \rangle \,|\,\bar{d}) \not\downarrow_c \\
(\nu d,\, e)\bar{b} \langle d \rangle \,|\, \bar{b} \langle e \rangle \,|\, b(x).\bar{x} \arrow[ur] \arrow[dr] & \\
& (\nu d,\, e)(\bar{b} \langle d \rangle \,|\,\bar{e}) \not\downarrow_c \\
\end{tikzcd}
何らかの理由で、2 つの矢印の水平方向の開始点が異なります。2 行目をノードにして を追加してみましたcells={nodes={anchor=east}}
が、問題は解決しません。この問題を解決する方法はありますか? また、2 行目からいくつかの文字を削除すると、意図したとおりの動作になるように見えるため、非常に奇妙な問題です。
編集: Marijn が指摘した矛盾を修正しました
答え1
デフォルトの中心とは異なるアンカーを使用できます。
また、すべての\,
コマンドを削除して を使用しました\mid
。 のひどい出力を改善するために\not\downarrow
、 を採用しました\centernot
。
注意: 左側の用語に不均衡な括弧があります。修正してください。
\documentclass{article}
\usepackage{amsmath}
\usepackage{tikz-cd}
\usepackage{centernot}
\begin{document}
\[
\begin{tikzcd}[row sep=tiny]
& (\nu d, e)(\bar{b} \langle e \rangle \mid \bar{d}) \mathrel{\centernot\downarrow}_c \\
(\nu d, e)(\bar{b} \langle d \rangle \mid \bar{b} \langle e \rangle \mid b(x).\bar{x}
\arrow[ur,start anchor=north east,end anchor=base west]
\arrow[dr,start anchor=south east,end anchor=real west] &
\\
& (\nu d, e)(\bar{b} \langle d \rangle \mid \bar{e}) \mathrel{\centernot\downarrow}_c \\
\end{tikzcd}
\]
\end{document}