newtx 字体使 tikz-cd 中的箭头变大

newtx 字体使 tikz-cd 中的箭头变大

我注意到 newtx 字体不知何故使 tikz-cd 图表中的箭头显得大得多。我想知道这是为什么,以及是否有任何方法可以解决这个问题。

下面的 MWE。

代码

\documentclass[11pt,a4paper]{article}
\usepackage[utf8]{inputenc}

\usepackage{tikz-cd}
%\usepackage{newtxtext}
%\usepackage{newtxmath}

\begin{document}
\[\begin{tikzcd}
X_0 \rar & X_1 \lar[shift left=1.5] \lar[shift right=1.5] \rar[shift right=1.5] \rar[shift left=1.5] & X_2 \lar\lar[shift right=3]\lar[shift left=3] \rar \rar[shift left=3] \rar[shift right=3] & \dots \lar[shift left=1.5]\lar[shift left=4.5]\lar[shift right=1.5]\lar[shift right=4.5]
\end{tikzcd}\]
\end{document}

得到以下图片:

普通箭

但取消注释 newtxttext 和 math 会给我这个:

带有 newtx 字体的大箭头

答案1

我找到了一种快速修复此问题的简单方法,只需更改箭头提示(这样我也可以匹配 newtx 字体的箭头样式)。只需添加

\tikzset{>={Straight Barb[scale = 0.7]}}
\tikzcdset{arrow style=tikz}

对于我的序言,我得到了这样的信息:

快速解决

看起来已经好多了。我仍然想知道问题最初是什么原因造成的,如果能提供任何见解,我将不胜感激。

一般来说,最好将这些更改设为本地更改,因为tikzpicture如果不是本地更改,则可能会影响其他更改。

\documentclass[11pt,a4paper]{article}
\usepackage[utf8]{inputenc}

\usepackage{tikz-cd}
\usepackage{newtxtext}
\usepackage{newtxmath}
\tikzcdset{smaller arrows/.style={arrow style=tikz,every arrow/.append style={>={Straight Barb[scale = 0.7]}}}}
\begin{document}
\[\begin{tikzcd}[smaller arrows]
X_0 \rar & X_1 \lar[shift left=1.5] \lar[shift right=1.5] \rar[shift right=1.5] \rar[shift left=1.5] & X_2 \lar\lar[shift right=3]\lar[shift left=3] \rar \rar[shift left=3] \rar[shift right=3] & \dots \lar[shift left=1.5]\lar[shift left=4.5]\lar[shift right=1.5]\lar[shift right=4.5]
\end{tikzcd}\]
\end{document}  

相关内容