答案1
没有半粗体版本,但你可以放大字体(我使用的代码适用于标题等较短的部分,但不适合较长的文本!):也可以使用 graphicx 包的 \scalebox 和 resizebox。由你来决定这是否看起来令人愉悦...
\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\begin{document}
\Huge
\textbf{Bold}
\font\testa=ec-lmr10 at 25pt
{\testa A bit Bold}
\font\testb=ec-lmr5 at 25pt
{\testb A bit Bold}
Not Bold
\end{document}
答案2
没有半粗体字体,但有是半粗体。字体的相关 type1 版本包含在软件包中lmodern
。不幸的是,lmodern.sty
没有提供访问这些字体的直接方法,也lmodern
没有提供所需的.fd
文件。幸运的是,cfr-lm
提供了。
\documentclass[10pt]{scrbook}
\usepackage[rm={proportional,lining},sf={proportional,lining},tt={tabular,lining,monowidth}]{cfr-lm}
\begin{document}
\Huge
Not bold enough
{\bfseries Too bold}
{\sbweight Just right}
\end{document}
不幸的是,半粗体缺乏视觉尺寸,而粗体扩展支持这些尺寸。这意味着在某些尺寸下,半粗体看起来至少与粗体一样粗,甚至更粗:
此外,半粗体并不像粗体那样被延长,并且没有真正的斜体 - 只有倾斜的形状。
话虽如此,根据所需的大小和形状范围,半粗体可能仍然是一个不错的选择。例如,在正常大小(10pt)下,它的粗度至少比粗体略小(尽管不幸的是,PNG 显示这一点不如 PDF 清晰):
效果还是很微妙的。比较重复的相同字母可能会更容易:
[左侧加粗;右侧半粗体;10pt。]
因此,根据您的需要,专门设计的半粗体可能比尝试其他答案中建议的伪造策略更好,也可能不是。至少,值得注意的是,肯定存在是这样的字体。
答案3
这种方法仅适用于 pdflatex,其中我使用 pdf 特殊功能将字体半加粗,这里体现为\textsb[<emboldening level>]{<text>}
。
在 MWE 中,我显示了从 到 (默认 ) 的加粗级别.2
。1
然后.4
可以将其与基线字体以及\textbf
版本进行比较。
\documentclass[10pt]{scrbook}
%%%%%
\input pdf-trans
\newbox\qbox
\def\usecolor#1{\csname\string\color@#1\endcsname\space}
\newcommand\outline[1]{\leavevmode%
\def\maltext{#1}%
\setbox\qbox=\hbox{\maltext}%
\boxgs{Q q 2 Tr \thickness\space w 0 0 0 rg 0 G}{}%
\copy\qbox%
}
\newcommand\textsb[2][.4]{%
\def\thickness{#1}%
\outline{#2}%
}
%%%%%
\begin{document}
\Huge Not bold enough
\textsb[.2]{.2 bold enough?}
\textsb{.4 bold enough?}
\textsb[.6]{.6 bold enough?}
\textsb[.8]{.8 bold enough?}
\textsb[1]{1.0 bold enough?}
{\bfseries Too bold}
\end{document}
答案4
@cfr 的答案在 PDFLaTeX 中效果很好,但如果您使用的是现代工具链,您将需要使用fontspec
。这里有一种方法可以做到这一点。它设置了类似 LaTeX 的命令\textsb{}
,\sbseries
这些命令可与任何包含权重的字体一起使用sb
。(如果您愿意,可以像在中一样给出\sbseries
名称。)\sbweight
nfss-cfr
\documentclass[10pt, varwidth, preview]{standalone}
\usepackage{fontspec}
\setmainfont[
Scale = 1.0,
Ligatures = {Common, Discretionary, TeX},
FontFace={sb}{n}{Font = {lmromandemi10-regular}, Extension = .otf },
FontFace={sb}{it}{Font = {lmromandemi10-oblique}, Extension = .otf }
]{Latin Modern Roman}
\defaultfontfeatures{ Scale=MatchLowercase, Ligatures=TeX }
% The commands to select semibold weight:
\DeclareRobustCommand\sbseries{\fontseries{sb}\selectfont}
\DeclareTextFontCommand{\textsb}{\sbseries}
\begin{document}
\Huge
Not bold enough
{\bfseries Too} \textbf{bold}
{\sbseries Just} \textsb{right}
\end{document}