我正在将演示文稿的字体更改为 calibri,但图形下的标题名称(“图形”部分)没有更改为 calibri,而是保留了衬线字体。 \setbeamerfont{caption name}{... 似乎不起作用
这是一个 mwe,但它没有重现问题...也许是因为我使用了一种风格?
\documentclass[aspectratio=169,t]{beamer}
\usepackage[T1]{fontenc}
\usepackage{pgf}
\usefonttheme{professionalfonts}
\RequirePackage{fontspec}
\setmainfont{Calibri}
\setbeamerfont{caption}{family=\sffamily,size=\small}
\setbeamerfont{caption name}{family=\sffamily,size=\small}
\begin{document}
\begin{frame}
\begin{itemize}
\item list of duck items
\end{itemize}
\begin{figure}
\centering
\includegraphics[width=.3\paperwidth, keepaspectratio]{example-image-duck}
\caption{Duck example}%\label{}
\end{figure}
\end{frame}
\end{document}
编辑:已提出,这是登录粘贴箱
答案1
Beamer 使用无衬线字体,因此您不需要设置主字体,而是需要更改无衬线字体(我将该字体替换为papyrus
以便更容易看到它是否正常工作)
正如@DavidCarlisle 所赞赏的:
不要
\usepackage[T1]{fontenc}
与……一起使用luatex
,尤其不要与……一起使用xetex
% !TeX TS-program = xelatex
\documentclass[aspectratio=169,t]{beamer}
%\usepackage[T1]{fontenc}
\usepackage{pgf}
\usefonttheme{professionalfonts}
\RequirePackage{fontspec}
\setsansfont{Papyrus}
\setbeamerfont{caption}{family=\sffamily,size=\small}
\setbeamerfont{caption name}{family=\sffamily,size=\small}
\begin{document}
\begin{frame}
\begin{itemize}
\item list of duck items
\end{itemize}
\begin{figure}
%\centering
\includegraphics[width=.3\paperwidth, keepaspectratio]{example-image-duck}
\caption{Duck example}%\label{}
\end{figure}
\end{frame}
\end{document}
与calibri
:
% !TeX TS-program = xelatex
\documentclass[aspectratio=169,t]{beamer}
%\usepackage[T1]{fontenc}
\usepackage{pgf}
\usefonttheme{professionalfonts}
\RequirePackage{fontspec}
\setsansfont{Calibri}
\setbeamerfont{caption}{family=\sffamily,size=\small}
\setbeamerfont{caption name}{family=\sffamily,size=\small}
\begin{document}
\begin{frame}
\begin{itemize}
\item list of duck items
\end{itemize}
\begin{figure}
%\centering
\includegraphics[width=.3\paperwidth, keepaspectratio]{example-image-duck}
\caption{Duck example}%\label{}
\end{figure}
\end{frame}
\end{document}