我想在交换图中绘制一个箭头作为等号。这应该可以使用equal
tikz-cd 提供的选项来实现。正如指出的那样tikz 中的长等号,这会在路径末端产生微弱的伪影。有一个小的暗边。
问:我该如何解决?
我从中窃取了示例代码https://tex.stackexchange.com/a/121192/12871:
\documentclass[tikz,convert=false]{standalone}
\usepackage{tikz-cd}
\usetikzlibrary{arrows}
\tikzset{commutative diagrams/.cd,arrow style=tikz,diagrams={>=latex'}}
\begin{document}
\begin{tikzcd}[swap,bend angle=45]
A \dar{f} \rar{a} \ar[bend left,equal]{rr}
& X \dar{g} \rar{r}
& A \dar[swap]{f} \\
B \rar[swap]{i} \ar[bend right,equal]{rr}
& Y \rar[swap]{\beta}
& B
\end{tikzcd}
\end{document}
答案1
众所周知,缺乏钛钾Z. 有点烦人,但并非不可避免。
这是补丁。它可能无法在所有情况下都起作用,因此您可能希望将补丁保留在本地。
\documentclass[tikz,convert=false]{standalone}
\usepackage{tikz-cd}
\usetikzlibrary{arrows}
\tikzset{commutative diagrams/.cd,arrow style=tikz,diagrams={>=latex'}}
\makeatletter
\def\pgf@stroke@inner@line{%
\let\pgf@temp@save=\pgf@strokecolor@global
\pgfsys@beginscope%
{%
\pgfsys@roundcap% <-- I add this
\pgfsys@setlinewidth{\pgfinnerlinewidth}%
\pgfsetstrokecolor{\pgfinnerstrokecolor}%
\pgfsyssoftpath@invokecurrentpath%
\pgfsys@stroke%
}%
\pgfsys@endscope%
\global\let\pgf@strokecolor@global=\pgf@temp@save
}
\begin{document}
\begin{tikzcd}[swap,bend angle=45]
A \dar{f} \rar{a} \ar[bend left,Rightarrow]{rr}
& X \dar{g} \rar{r}
& A \dar[swap]{f} \\
B \rar[swap]{i} \ar[bend right,equal]{rr}
& Y \rar[swap]{\beta}
& B
\end{tikzcd}
\end{document}