Biblatex:更改引用标记和参考文献的字体?

Biblatex:更改引用标记和参考文献的字体?

在我的正文中,我使用罗马字体和旧式数字

在所有表格中,我都使用相同的罗马字体,但使用现代数字。由于某些列可能主要由数字组成,而当这些数字设置为旧式时,看起来有点笨拙。由于我的所有表格都在一个floatrow对象内,因此我将字体定义如下:

\usepackage{floatrow}
\usepackage{fontspec}
\newfontfamily\tablefont[Path=x]{fontname.otf} 
\DeclareFloatFont{tables}{\tablefont}
\floatsetup[table]{font={tables}}

我使用 biblatex 作为参考,并使用数字作为引用标记。

现在我发现引文标记是根据其直接环境的字体进行格式化的。因此,在我的正文中,这些引文编号是现代的,而在表格中则是旧式的。但是我如何才能更改引文编号的格式,使它们在整个文档中保持一致。我想为此使用自定义字体系列。同样,我想\printbibliography以同样的方式更改参考书目 () 的格式。

或者这是否与 floatfont 声明直接相关,并且这些总是会覆盖我的引用格式声明?

一直在阅读 biblatex 手册,我读到了一些关于 \bibfont 的内容,但不知道应该如何使用它。

答案1

\bibfont钩子用于设置参考书目的字体。它是一个普通的 LaTeX 宏(不是 BibLaTeX bibmacro),因此您需要使用 来更新它\renewcommand,例如:

\renewcommand*{\bibfont}{\small}

所有引用的钩子是\citesetup,它在 中定义biblatex.def。您可以使用 LaTeX\renewcommand*命令对其进行修改。默认情况下\citesetup设置为:

\newcommand*{\citesetup}{%
  \biburlsetup
  \frenchspacing}

您可能想在更新的版本中添加类似\rmfamily或或其他内容:\normalfont

\renewcommand*{\citesetup}{%
  \normalfont
  \biburlsetup
  \frenchspacing}

您可以发挥创造力,定义一个单独的命令,\citefont并将其放入 中\citesetup,从而创建与 的并行\bibfont。如果您想在所有文档中都使用它,那么您可以将其放入文件中biblatex.cfg

我不知道引用末尾有任何钩子,因此您可能无法轻松地在不破解引用命令的情况下在末尾添加内容。

答案2

除了重新定义\citesetup,您还可以使用\appto宏(由 etoolbox包(由 加载biblatex)来附加代码,\citesetup而不必查找其当前定义。

\appto{\citesetup}{\normalfont}

相关内容