如何使用 tikz-cd 更改交换图中标签的大小

如何使用 tikz-cd 更改交换图中标签的大小

我使用该包制作了一个交换图tikz-cd,但不知道该如何增加箭头标签的大小。我以前[sep=2cm]会将行和列的间距拉大,但现在标签看起来有点小了。这是一个最简单的工作示例:

\documentclass[a4paper,12pt]{article}
\usepackage{tikz-cd}

\begin{document}

\[\begin{tikzcd}[sep=2cm]
{} & B & {} \\
A_1 \ar{ru}{f_1} & A \ar{l}{\iota_1} \ar{u}{f} \ar{r}{\iota_2} & A_2 \ar{lu}{f_2}
\end{tikzcd}\]

\end{document}

输出如下:

交换图

有没有办法可以一起改变所有标签的大小,或者只是按比例缩放整个图表而不使用[sep=2cm]

答案1

您可以将 用作标签,并\tikzcdset{every label/.append style = {font = \normalsize}}选择\normalsize离开[sep=2cm]

\documentclass[a4paper,12pt]{article}
\usepackage{tikz-cd}
\tikzcdset{every label/.append style = {font = \normalsize}}
\begin{document}

\[\begin{tikzcd}[sep=2cm]
{} & B & {} \\
A_1 \ar{ru}{f_1} & A \ar{l}{\iota_1} \ar{u}{f} \ar{r}{\iota_2} & A_2 \ar{lu}{f_2}
\end{tikzcd}\]

\end{document}

在此处输入图片描述

答案2

我会像 那样tikz-cd做,也就是说,强加\textstyle而不是\scriptstyle。但就我个人而言,我会让他们\scriptstyle

我还建议对代码进行一些修改,使用命令\arrow,这样更灵活。'标签后面的(双引号中)表示swap

\documentclass[a4paper,12pt]{article}
\usepackage{tikz-cd}

\tikzcdset{
  every label/.append style = {
    font = \everymath\expandafter{\the\everymath\textstyle},
  },
}

\begin{document}

\[
\begin{tikzcd}[sep=2cm]
{} & B & {} \\
A_1 \arrow[ru,"f_1"] &
A \arrow[l,"\iota_1"'] \arrow[u,"f"] \arrow[r,"\iota_2"] &
A_2 \arrow[lu,"f_2"']
\end{tikzcd}
\]

\end{document}

在此处输入图片描述

相关内容