我是新手xelatex
,但我已经设法更改了章节、部分等的字体。现在,我想更改浮动标题(图片、表格……)的全局字体。如您所见,我已将字体命名为“\captionfont”。
下面,您将看到一个最小的工作示例,其中我没有做任何修改。我猜问题出在captionsetup
。我读了很多关于设置字体的文章,现在我已经习惯了这种方式,所以如果可以全局设置标题字体,而不需要对原始代码进行太多更改,那就太好了。
\documentclass[12pt,a4paper,english]{report}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
%---- FONTS ----
\usepackage[math-style=ISO]{unicode-math}
\defaultfontfeatures{Scale=MatchLowercase,Mapping=tex-text}
\setmainfont[Numbers={Proportional},SmallCapsFeatures={LetterSpace=6},
BoldFont={Minion Pro Bold},BoldFeatures={LetterSpace=3}]{Minion Pro}
\setmonofont{Minion Pro}
\newfontfamily\chapterfont{Neo Sans Std}
\newfontfamily\sectionfont{Neo Sans Std Medium}
\newfontfamily\captionfont{Neo Sans Std}
% ---- END FONTS ----
\usepackage{graphicx}
\usepackage{caption}
\captionsetup{font=small,labelfont=bf,margin={0cm,0cm},justification=justified,singlelinecheck=off}
\titleformat*{\chapter}{\huge\chapterfont}
\begin{document}
Here goes some text with the font X.
\begin{figure}
\includegraphics[width=1\textwidth]{dummyfigure}
\caption{This should be font \captionfont}
\end{figure}
Here continues font X.
\end{document}
我希望有人能帮我修复它:)
答案1
这将为您提供所需的标题字体:
\DeclareCaptionFormat{neofont}{\captionfont\small#1#2#3}
\captionsetup{format=neofont,labelfont=bf,margin={0cm,0cm},justification=justified,singlelinecheck=off}
一个完整的简化示例:
\documentclass[12pt,a4paper,english]{report}
\usepackage{caption}
\usepackage{fontspec}
\newfontfamily\captionfont{Neo Sans}
\DeclareCaptionFormat{neofont}{\captionfont\small#1#2#3}
\captionsetup{format=neofont,labelfont=bf,margin={0cm,0cm},justification=justified,singlelinecheck=off}
\begin{document}
Here goes some text with the main font.
\begin{figure}
\includegraphics[width=1\textwidth]{example-image-a}
\caption{This is on Neo Sans font}
\end{figure}
Here continues main font.
\end{document}
输出:
我使用了Neo Sans
而不是Neo Sans Std
,但想法是一样的。