将 \sbweight 和 \lgweight 与 cfr-lm 包一起使用

将 \sbweight 和 \lgweight 与 cfr-lm 包一起使用

流明提供字体粗细\sbweight\lgweight

  1. \renewcommand\bfdefault{sb}
    

    我们可以像默认粗体字体一样使用它。这是最好的方法吗?

  2. 如何使用\lgweight字体粗细\texttt\ttfamily

答案1

lmodern为了模拟我认为的选项可能产生的效果lighttt,您可以尝试以下操作:

\documentclass{article}
\usepackage[tt={tabular, lining, monowidth}]{cfr-lm}
\newcommand{\myalph}{Aa Bb Cc Dd Ee Ff Gg Hh Ii Jj Kk Ll Mm Nn Oo Pp Qq Rr Ss Tt Uu Vv Ww Xx Yy Zz 0123456789}
\usepackage{filecontents}
\begin{filecontents}{t1clmt.fd}
%Filename: t1clmt.fd
%Original created by: tex clm-t1-drv
%Original created using fontinst v1.933

%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY

\ProvidesFile{t1clmt.fd}
   [2010/05/25 Fontinst v1.933 font definitions for T1/clmt. Hacked 2014/07/04.]

\DeclareFontFamily{T1}{clmt}{\hyphenchar\font=\m@ne}

\DeclareFontShape{T1}{clmt}{m}{n}{
   <-8.5> clmtt8t8
   <8.5-9.5> clmtt8t9
   <9.5-11> clmtt8t10
   <11-> clmtt8t12
}{}

\DeclareFontShape{T1}{clmt}{m}{sl}{
   <-> clmtto8t10
}{}

\DeclareFontShape{T1}{clmt}{m}{it}{
   <-> clmtti8t10
}{}

\DeclareFontShape{T1}{clmt}{m}{sc}{
   <-> clmtcsc8t10
}{}

\DeclareFontShape{T1}{clmt}{m}{scsl}{
   <-> clmtcso8t10
}{}

\DeclareFontShape{T1}{clmt}{bx}{n}{
   <-> clmtk8t10
}{}

\DeclareFontShape{T1}{clmt}{bx}{sl}{
   <-> clmtko8t10
}{}

\DeclareFontShape{T1}{clmt}{l}{n}{
   <-> clmtl8t10
}{}

\DeclareFontShape{T1}{clmt}{l}{sl}{
   <-> clmtlo8t10
}{}

\DeclareFontShape{T1}{clmt}{lc}{n}{
   <-> clmtlc8t10
}{}

\DeclareFontShape{T1}{clmt}{lc}{sl}{
   <-> clmtlco8t10
}{}

\DeclareFontShape{T1}{clmt}{m}{ui}{<->ssub * clmt/m/it}{}
\DeclareFontShape{T1}{clmt}{m}{si}{<->ssub * clmt/m/scsl}{}
\DeclareFontShape{T1}{clmt}{b}{n}{<->ssub * clmt/bx/n}{}
\DeclareFontShape{T1}{clmt}{bx}{sc}{<->ssub * clmt/bx/n}{}
\DeclareFontShape{T1}{clmt}{b}{sc}{<->ssub * clmt/bx/sc}{}
\DeclareFontShape{T1}{clmt}{b}{sl}{<->ssub * clmt/bx/sl}{}
\DeclareFontShape{T1}{clmt}{bx}{it}{<->ssub * clmt/bx/sl}{}
\DeclareFontShape{T1}{clmt}{b}{it}{<->ssub * clmt/bx/it}{}
\DeclareFontShape{T1}{clmt}{bx}{ui}{<->ssub * clmt/bx/it}{}
\DeclareFontShape{T1}{clmt}{b}{ui}{<->ssub * clmt/bx/ui}{}
\DeclareFontShape{T1}{clmt}{l}{sc}{<->ssub * clmt/l/n}{}
\DeclareFontShape{T1}{clmt}{l}{it}{<->ssub * clmt/l/sl}{}
\DeclareFontShape{T1}{clmt}{l}{ui}{<->ssub * clmt/l/it}{}
\DeclareFontShape{T1}{clmt}{lc}{sc}{<->ssub * clmt/lc/n}{}
\DeclareFontShape{T1}{clmt}{lc}{it}{<->ssub * clmt/lc/sl}{}
\DeclareFontShape{T1}{clmt}{lc}{ui}{<->ssub * clmt/lc/it}{}
\DeclareFontShape{T1}{clmt}{sb}{n}{<->ssub * clmt/m/n}{}
\DeclareFontShape{T1}{clmt}{sb}{sc}{<->ssub * clmt/m/sc}{}
\DeclareFontShape{T1}{clmt}{sb}{sl}{<->ssub * clmt/m/sl}{}
\DeclareFontShape{T1}{clmt}{sb}{it}{<->ssub * clmt/m/it}{}
\DeclareFontShape{T1}{clmt}{sb}{ui}{<->ssub * clmt/m/ui}{}

\endinput
\end{filecontents}


\renewcommand\bfdefault{sb}
\renewcommand\mddefault{l}

\begin{document}
  \myalph

  \textbf{\myalph}

  \ttfamily

  \myalph

  \textbf{\myalph}

\end{document}

这样做的目的是用 代替m的粗细sb。由于您将其声明\bfdefaultsb,这实际上意味着当使用此字体系列时,中等粗细将用作粗体。当然,当您使用罗马字体或无字体时,您实际上会得到 ,sb因为这些系列具有该粗细,并且描述文件支持它。

通过设置\mddefaultl,您将获得与整个字体一样的轻量级正常中等量级。但是,由于只有打字机字体才有这种重量,因此它不会影响用于罗马字体或无衬线字体的重量。

请注意,这绝对是一种 hack,根本不正确,更不用说优雅了。此外,可能还有几件事我没有想到,所以请小心使用并让我知道。买者自负...

半价、中价和轻价

上述文档将文件写入t1clmt.fd当前输出目录(通常与您的tex文件位于同一目录)。这意味着 TeX 将使用此版本的文件,而不是主texmf树中的原始版本。要将此技巧用于其他文档,最好将t1clmt.fd生成的文件放在与您的文档相同的目录中。

相关内容