买者自负。

买者自负。

如何将字体的粗体改为半粗体?以下是我为我的简历在线复制的代码的初始化。我对乳胶很陌生,所以到目前为止我几乎一无所知。我希望有人能给我一个简短而简单的解决方案,无论它有多不专业。我的简历没问题。我只需要编辑粗体。

我尝试了下面的链接但仍然出现错误。

设置“字体粗细:较浅/较粗”

fontenc、inputenx、txfonts、mathptmx 和 newunicodechar 中任何一个都可以支持半粗体吗?

\documentclass[11pt,a4paper]{moderncv}

\moderncvtheme[blue]{classic}

\usepackage[T1]{fontenc}
\usepackage[utf8x]{inputenc}
\usepackage[croatian]{babel}

\usepackage{hyphenat}

\usepackage[scale=0.75]{geometry}
\setlength{\hintscolumnwidth}{3.2cm}
\recomputelengths

\fancyfoot{}
\fancyfoot[LE,RO]{\thepage}
\fancyfoot[RE,LO]{\footnotesize }

% personal datas
\firstname{}
\familyname{}
\address{}{}
\mobile{}              
\email{} 
\photo[]{}

\AtBeginDocument{
    \hypersetup{pdfborder = 0 0 1,colorlinks=false,linkbordercolor=blue,urlcolor=blue}
}

\nopagenumbers{} % uncomment to suppress automatic page numbering for CVs longer than one page

\usepackage{lmodern}

答案1

为了记录在案,我付出了巨大的努力来干净地完成这项工作,但彻底失败了。moderncv硬代码大量使用粗体以及使用提供的钩子tweaklist对我们的目的几乎没有任何影响。

所以,这不是一个好方法,但可能就足够了。

买者自负。

根据建议阿拉什·埃斯巴蒂,我们首先加载cfr-lm。但是,我们可能不想要包的默认值。如果lmodern除了粗体之外还可以接受,让我们试试这个:

\usepackage[rm={lining,proportional},sf={lining,proportional},tt={lining,tabular,monowidth}]{cfr-lm}

这保留了衬线数字,尽管它确实对无衬线字体和衬线字体使用了比例。打字机系列设置为使用表格衬线数字和等宽打字机变体。

lmodern始终使用表格衬线数字。cfr-lm默认情况下使用比例衬线和可变打字机。比例衬线数字对于无衬线字体和衬线字体来说看起来会好得多,但您可以说tabular您是否更喜欢标准的丑陋。

现在,理想情况下,我们只需告诉moderncv要使用哪种字体即可。不幸的是,这似乎是不可能的,所以我们要么重写包的大部分内容,要么使用肮脏的黑客手段。

我采用了以下方法:

\global\let\bfseries\sbweight

这将使用半粗体字体代替粗体扩展字体。

请注意,这有一些限制。如果我们使用粗斜体,我们将无法获得半粗斜体,因为这种粗细下没有真正的斜体。

此外,还有一些不太明显的限制,例如我们的光学尺寸较少。这不会是一个大问题,但这意味着我们的字符形状不会根据尺寸进行敏感调整。光学尺寸通过使用较粗的笔画,使字体在较小尺寸下更易于阅读。相反,标准尺寸将按比例放大或缩小,同时保持相同的形状。

还要注意的是,\bfseries变化当前字体的各个方面。首先,它将粗细改为粗体。其次,它将宽度改为扩展。(实际上,它并没有这么简单,但这对于我们的目的来说已经足够了,因为我们关心的是 Latin Modern,而不是 TeX 字体世界的其他部分。)

\sbweight变化字体的一个方面:粗细。它不会改变宽度。我们是否喜欢这个并不重要,因为 Latin Modern 不提供半粗体扩展(或粗体非扩展)。但我们的粗体看起来会比默认配置更窄、更轻。

moderncv这是您的序言 + 我的修改 +的大量内容的结果templatex.tex

简历被盗

完整代码:

\documentclass[11pt,a4paper]{moderncv}
\moderncvtheme[blue]{classic}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}% don't use utf8x !!
\usepackage[croatian]{babel}
\usepackage{hyphenat}
\usepackage[scale=0.75]{geometry}
\setlength{\hintscolumnwidth}{3.2cm}
\recomputelengths
\fancyfoot{}
% \fancyfoot[LE,RO]{\thepage}% if you switch off page numbering belos, this makes no sense!
% \fancyfoot[RE,LO]{\footnotesize}

% personal datas
\firstname{Meg}
\familyname{Magik}
\address{The Haunted Web}{5 West Coven Grove}
\mobile{777 777--7777}
\email{[email protected]}
\photo{cauldron}

\AtBeginDocument{%
  \hypersetup{pdfborder = 0 0 1,colorlinks=false,linkbordercolor=blue,urlcolor=blue}%
}
\nopagenumbers{} % uncomment to suppress automatic page numbering for CVs longer than one page

\usepackage[rm={lining,proportional},sf={lining,proportional},tt={lining,tabular,monowidth}]{cfr-lm}
\global\let\bfseries\sbweight
\begin{document}
% from moderncv's template.tex
\makecvtitle

\section{Education}
\cventry{year--year}{Degree}{Institution}{City}{\textit{Grade}}{Description}  % arguments 3 to 6 can be left empty
\cventry{year--year}{Degree}{Institution}{City}{\textit{Grade}}{Description}

\section{Master thesis}
\cvitem{title}{\emph{Title}}
\cvitem{supervisors}{Supervisors}
\cvitem{description}{Short thesis abstract}

\section{Experience}
\subsection{Vocational}
\cventry{year--year}{Job title}{Employer}{City}{}{General description no longer than 1--2 lines.\newline{}%
Detailed achievements:%
\begin{itemize}%
\item Achievement 1;
\item Achievement 2, with sub-achievements:
  \begin{itemize}%
  \item Sub-achievement (a);
  \item Sub-achievement (b), with sub-sub-achievements (don't do this!);
    \begin{itemize}
    \item Sub-sub-achievement i;
    \item Sub-sub-achievement ii;
    \item Sub-sub-achievement iii;
    \end{itemize}
  \item Sub-achievement (c);
  \end{itemize}
\item Achievement 3.
\end{itemize}}
\cventry{year--year}{Job title}{Employer}{City}{}{Description line 1\newline{}Description line 2}
\subsection{Miscellaneous}
\cventry{year--year}{Job title}{Employer}{City}{}{Description}

\section{Languages}
\cvitemwithcomment{Language 1}{Skill level}{Comment}
\cvitemwithcomment{Language 2}{Skill level}{Comment}
\cvitemwithcomment{Language 3}{Skill level}{Comment}

\section{Computer skills}
\cvdoubleitem{category 1}{XXX, YYY, ZZZ}{category 4}{XXX, YYY, ZZZ}
\cvdoubleitem{category 2}{XXX, YYY, ZZZ}{category 5}{XXX, YYY, ZZZ}
\cvdoubleitem{category 3}{XXX, YYY, ZZZ}{category 6}{XXX, YYY, ZZZ}

\section{Interests}
\cvitem{hobby 1}{Description}
\cvitem{hobby 2}{Description}
\cvitem{hobby 3}{Description}

\section{Extra 1}
\cvlistitem{Item 1}
\cvlistitem{Item 2}
\cvlistitem{Item 3. This item is particularly long and therefore normally spans over several lines. Did you notice the indentation when the line wraps?}

\section{Extra 2}
\cvlistdoubleitem{Item 1}{Item 4}
\cvlistdoubleitem{Item 2}{Item 5\cite{book1}}
\cvlistdoubleitem{Item 3}{Item 6. Like item 3 in the single column list before, this item is particularly long to wrap over several lines.}

\section{References}
\begin{cvcolumns}
  \cvcolumn{Category 1}{\begin{itemize}\item Person 1\item Person 2\item Person 3\end{itemize}}
  \cvcolumn{Category 2}{Amongst others:\begin{itemize}\item Person 1, and\item Person 2\end{itemize}(more upon request)}
  \cvcolumn[0.5]{All the rest \& some more}{\textit{That} person, and \textsb{those} also (all available upon request).}
\end{cvcolumns}
\end{document}

答案2

我迟了几年,但这个问题仍然出现在搜索中。以前的答案仅适用于旧式编码,未来任何想要用 LaTeX 制作简历的人很可能都会选择与默认字体不同的字体。

我听说大多数专业人士建议不要在同一文档中使用同一种字体的几种不同粗细,所以我猜你问的是怎样才能使字体变成\bfseries\textbf{}粗体而不是粗体。(如果你确实想要一个单独的和\sbseries,我也有。)\textsb{}fontspec

含封装选项

如果你搜索OTF 字体在 CTAN 上,您可以找到一系列以某种方式支持 OpenType 字体的软件包。其中一些软件包只是将免费.OTF文件转储到您的发行版的子目录中。有些则包含.STY用于商业字体的字体,但这些字体无法分发。

不过,有些字体有一个很好的软件包,可以帮你设置字体。当字体系列包含半粗体字重时,大多数字体都提供了[sb][semibold]软件包选项,可以将半粗体替换为粗体。

\usepackage[osf, sb]{libertine}

截至 2018 年 8 月,支持此功能的其他软件包的部分列表包括libertinus-otf、、、和。plex-serifplex-sansnoto-serifnoto-sanssourcesanspro

使用fontspec命令

如果你没有可以加载字体的包,则必须使用中的\setmainfont或。例如,有一个包,但它仅支持中等粗细并将粗体设置为常规!如果你下载\newfontfamilyfontspecebgaramond来自 GitHub 的字体系列,你可以用以下方式加载族:

\documentclass[varwidth, preview]{standalone}
\usepackage{fontspec}

\setmainfont[
  Scale = 1.0,
  Ligatures={Common, Discretionary, TeX},
  Numbers=OldStyle,
  UprightFont = *-Regular ,
  BoldFont = *-SemiBold ,
  ItalicFont = *-Italic ,
  BoldItalicFont = *-SemiBoldItalic ,
  Extension = .otf
]{EBGaramond}

\begin{document}
EB Garamond \textbf{bold \textit{Italic.}}
\end{document}

修补软件包

在某些情况下,您可以在加载包之前修补包中的字体定义\defaultfontfeatures[\rmdefault]{ BoldFont = ... },但如果包指定了粗体字体,则此方法不起作用。

由于ebgaramond包确实将BoldFont =和设置BoldItalicFont =为正常粗细,因此我们无法用覆盖它们\defaultfontfeatures。但是,我们可以添加其他字体命令,例如新系列:

\documentclass[varwidth, preview]{standalone}
\usepackage{fontspec}

\defaultfontfeatures[\rmdefault, EBGaramond12]{
  Scale=MatchLowercase,
  FontFace = {sb}{n}{ Font = {EBGaramond-SemiBold},
                      Extension = .otf },
  FontFace = {sb}{it}{ Font = {EBGaramond-SemiBoldItalic},
                       Extension = .otf }
}

\DeclareRobustCommand\sbseries{\fontseries{sb}\selectfont}
\DeclareTextFontCommand{\textsb}{\sbseries}

\usepackage{ebgaramond}

\begin{document}
EB Garamond \textsb{semibold \textit{Italic.}}
\end{document}

答案3

请始终发布一个最小的工作示例,只需复制/粘贴到编辑器中即可进行编译。

对于您的问题,我建议您使用cfr-lm.sty而不是lmodern.sty,它为字体提供了更好的界面。您正在寻找\sbweight。代码:

\documentclass[a4paper]{article}
\usepackage[T1]{fontenc}
\usepackage{lipsum,geometry} 
\usepackage{cfr-lm}
\frenchspacing

\begin{document}
\lipsum[1]
{\sbweight \lipsum[1]}
{\bfseries \lipsum[1]}    
\end{document}

在此处输入图片描述

相关内容