无法使用 ModernCV 更改字体

无法使用 ModernCV 更改字体

我已经尝试使用 modernCV 更改字体一段时间了,但似乎没有任何效果。我使用的是 LuaTex。首先,我尝试将其从 sans 更改为 roman,虽然字体发生了变化,但您可以看到没有任何东西像应该的那样被斜体化或加粗。

\documentclass[11pt,a4paper,roman]{moderncv}  

\moderncvicons{awesome}%marvosym  

% moderncv themes
\moderncvstyle{banking}                            % casual/classic/oldstyle/banking/fancy
\moderncvcolor{green}                              % blue/orange/green/red/purple/grey/black

\nopagenumbers{}                                  % uncomment to suppress automatic page numbering

% adjust the page margins
\usepackage[scale=0.75, top=2cm, bottom=2cm]{geometry}

% personal data
\name{First}{Last}                               
\address{Address}{City}{Country}
\phone[mobile]{123456}                  
\email{[email protected]}                                

%----------------------------------------------------------------------------------
%            content
%----------------------------------------------------------------------------------
\begin{document}
%-----       resume       ---------------------------------------------------------
\makecvtitle
%==============================================================================================================================
% EXPERIENCE
%==============================================================================================================================
\section{Experience}

\cventry{May 2015 -- July 2015}{Intern Research Assistant}{Institute of Whatever}{XXX, YYY}{Supervisor: Dr. ABC}{{}
\vspace{4pt}
\begin{itemize}%
\item Nice stuff.
\end{itemize}}
\vspace{7pt}


\end{document}

第 1 行写着 sans 时的情况就是这样。 当我将其切换为罗马字体时,它看起来是这样的(就像在 MWE 中一样)

第一张图片是第一行使用 sans 字体时的样子,第二张图片是使用 roman 字体时的样子。如您所见,没有任何内容是粗体或斜体。

之后,我尝试了多种方法来更改字体,但都没有任何效果:

  1. 我在这里尝试了两个答案: 更改 moderncv 使用的字体

    \documentclass{moderncv} \usepackage{mathpazo} \renewcommand{\sfdefault}{\rmdefault}

  2. xelatex 的答案如下: 有没有办法将自定义字体与 moderncv 一起使用?

    \usepackage{fontspec} \setmainfont[Ligatures=TeX]{Calibri}

  3. 我也在这里尝试了答案,因为这是我的主要目标:在 moderncv 中更改正文字体而不影响其他字体

我最初的目标是从简历条目中删除字段 1、2 和 5 中的斜体(日期、职位和主管/额外信息)。但这些都不起作用。

使用答案 3 中提供的 MWE,有些东西起作用了,但有些东西不起作用。例如,我可以更改标题的字体大小,但我无法对提示字体做任何事情,它永远不会改变。

我将不胜感激任何帮助。

编辑:澄清:我原来的问题涉及

  1. 更改整个文档的字体(已解决,见下文)。

  2. 更改命令字段 1、2 和 5 中的字体cventry

根据@Ulrike Fischer的评论,我添加了 \setmainfont{Times New Roman}after \moderncvstyle{banking},第一个问题已修复。现在我得到了罗马字体,其中的内容按应有的方式斜体和加粗。但是,如果我添加\renewcommand*{\hintfont}{\upshape},日期的字体仍为斜体。我无法用\renewcommand*\hintfont{\fontsize{40}{24}}任何一种更改其大小,也不知道如何将字段 2 和 5 更改为非斜体。

编辑:正如评论中所述,解决此问题的方法是在特定字段前添加 \upshape,最好使用 cventry 的包装器。重新定义对我来说不起作用。

答案1

正如评论中所要求的,我将我的评论转换为(简短的)答案:

banking-style 不适用于 lualatex,它加载了不合适的字体。因此,要更改文档字体,请添加\setmainfont{Latin Modern Roman}(或其他字体)加载银行。

在 cventry 中是\itshape硬编码的(在 moderncvbodyiii.sty 中)。要更改此设置,您必须\upshape直接在条目中添加,例如\cventry{\upshape May 2015 -- July 2015},或编写一些包装器命令。

相关内容