
在製作交換圖時,我更喜歡使用tikz-cd
witharrow style=math font
選項,以使箭頭提示與文檔字體匹配,如下kpfonts
MWE 所示。有時工作正常,有時會崩潰,就像下面的例子一樣,等號看起來“壞了”,在螢幕上和列印上。
刪除該選項math font
會產生以下結果。現在等式看起來很好,但箭頭提示不再與kpfonts
箭頭相符。是否可以以某種方式解決這個問題,例如讓箭頭使用選項math font
,而不是等式?到目前為止,我只能在全球範圍內切換這兩個選項。
\documentclass{article}
\usepackage{amsmath,kpfonts,tikz-cd}
\tikzcdset{arrow style=math font}
\begin{document}
\begin{tikzcd}[row sep=small]
H_n(S^n)
\arrow[r,"i_*"]
\arrow[d,equal]
& H_n(X)
\arrow[r,"q_*"]
\arrow[d,equal]
&
H_n(X/S^n)
\arrow[d,equal]
\\
\mathbb{Z}
&
\mathbb{Z}/m
&
0
\end{tikzcd}
\end{document}
答案1
這在一定程度上是一個渲染問題(灰線),人們會告訴您不要擔心它是否列印正常。如果要列印您的文檔,這是可以的。但是,如果您的文件將以電子方式查看,那就更成問題了。
對於箭頭,我能想到的最佳解決方案是選擇不同的字體或使用替代的箭頭樣式。做到這一點的一種方法是提出提示明顯地不同的。另一種方法是嘗試匹配 KP 箭頭提示。
我認為第一個很簡單。對於第二個,我的第一個想法是Straight Barb
:
我認為這比預設的更好,但定制的Stealth
可能更接近:
\documentclass[tikz,multi,border=10pt]{standalone}
\usepackage{amsmath,kpfonts,tikz-cd}
\usetikzlibrary{arrows.meta}
\tikzcdset{arrow style=tikz}
\begin{document}
\tikzset{%
>/.tip={Straight Barb[angle=90:2pt 1]}
}
\begin{tikzcd}[row sep=small]
H_n(S^n)
\arrow[r,"i_*"]
\arrow[d,equal]
& H_n(X)
\arrow[r,"q_*"]
\arrow[d,equal]
&
H_n(X/S^n)
\arrow[d,equal]
\\
\mathbb{Z}
&
\mathbb{Z}/m
&
0
\end{tikzcd}
\tikzset{%
>/.tip={Stealth[length=3pt, width=4pt, inset=1.8pt]}
}
\begin{tikzcd}[row sep=small]
H_n(S^n)
\arrow[r,"i_*"]
\arrow[d,equal]
& H_n(X)
\arrow[r,"q_*"]
\arrow[d,equal]
&
H_n(X/S^n)
\arrow[d,equal]
\\
\mathbb{Z}
&
\mathbb{Z}/m
&
0
\end{tikzcd}
\end{document}