Flecha redondeada en tikzcd con texto

Flecha redondeada en tikzcd con texto

Esta es una continuación de miPregunta anterior. Me gustaría dibujar una flecha rectangular con esquinas redondeadas en tikzcd y me gustaría poner un texto en esta flecha. Aquí está mi intento:

ingrese la descripción de la imagen aquí

\documentclass[12pt,a4paper]{article}
\usepackage[latin1]{inputenc}
\usepackage{tikz-cd}
\usepackage[english]{babel}
\usepackage{relsize}
\tikzset{nodes={inner sep=2pt}}
\usepackage{blindtext}

\begin{document}
\[\begin{tikzcd}[sep=34pt]
    B \ar{r}[swap]{g}
    \ar[to path={ -- ([yshift=-4ex]\tikztostart.south) -| (\tikztotarget)},
        rounded corners=12pt]{rr}
    & B' \ar{r}[swap]{g'}
    \ar[phantom]{d}[pos=0.45]{\mathsmaller{g' \circ g}} & B'' \\
    & \phantom{.} &
 \end{tikzcd}\]
\blindtext

\end{document}

El problema es que el nodo fantasma produce espacios en blanco adicionales en la imagen tikz, de modo que el texto que sigue no viene directamente después.

Hay una solución "sucia" que usa \vspace{-10mm} después de la imagen tikz, pero no es muy precisa ni elegante.

Respuesta1

Puedes agregar un nodo al final de dibujar esa imagen. Pero esto todavía requiere el posicionamiento manual de la etiqueta. Al menos no generas espacio extra aquí:

% arara: pdflatex

\documentclass{article}
\usepackage{tikz-cd}
\usetikzlibrary{positioning}

\begin{document}
\begin{tikzcd}[sep=large, execute at end picture={\node[below = 1mm of tikz@f@1-1-2] {$\scriptstyle  g' \circ g$};}]
    B \ar{r}[swap]{g\vphantom{'}}
    \ar[to path={ -- ([yshift=-4ex]\tikztostart.south) -| (\tikztotarget)},
    rounded corners=12pt]{rr}
    & B' \ar{r}[swap]{g'} & B'' \\
\end{tikzcd}
\end{document}

ingrese la descripción de la imagen aquí

información relacionada