MWE 的图片

MWE 的图片

到目前为止,我的理解是,在给出“父”范围/更全局的定义之后提供字体命令,是额外的, 但是我错了。

我如何获取节点仅有的设置为无衬线字体?

MWE 的图片

在此处输入图片描述

平均能量损失

\documentclass[
fontsize=11pt,
DIV=12,
paper=a4,
]{standalone}

\usepackage{
    tikz,
}
\usepackage{amsmath}
\usepackage{textcomp}
\usepackage[oldstyle,proportional]{libertine}
\usepackage{libertinust1math}
\usepackage{zlmtt}
\usepackage[scale=0.8558]{tgheros}

\usepackage{microtype}

\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}

\begin{document}
\begin{tikzpicture}[
font=\sffamily,
every node/.style={
    font=\sffamily,
},]
\node at (0,0) {123 - in sans!};
\node[font=\bfseries] at (0,-1cm) {123 not sans :(} ;
\end{tikzpicture}
\end{document}

答案1

在您的设置中,font=\bfseries覆盖font=\sffamily。但是,如果您使用node font而不是字体来应用其中任何一个,它都会起作用。这是因为 TiZ 将同时应用fontnode font

\documentclass[
fontsize=11pt,
DIV=12,
paper=a4,
]{standalone}

\usepackage{
    tikz,
}
\usepackage{amsmath}
\usepackage{textcomp}
\usepackage[oldstyle,proportional]{libertine}
\usepackage{libertinust1math}
\usepackage{zlmtt}
\usepackage[scale=0.8558]{tgheros}

\usepackage{microtype}

\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}

\begin{document}
\begin{tikzpicture}[font=\sffamily]
\node at (0,0) {123 - in sans!};
\node[node font=\bfseries] at (0,-1cm) {123 now sans ;-)} ;
\end{tikzpicture}
\end{document}

在此处输入图片描述

font原则上,你可以颠倒和的角色node font。但是,pgfmanual 在第 223 页说

在此处输入图片描述

而对于node font(见第 222 页),此限制似乎不适用:

在此处输入图片描述

因此,我想主张应该使用诸如 之类的修饰符\bfseries,它们可以(更多地)改变文本的尺寸,而node font不仅仅是font

相关内容