喂食
\documentclass{standalone}
\usepackage[T2A,T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[russian,ngerman]{babel}
\usepackage{newtxtext}
\begin{document}
\foreignlanguage{russian}{%
\fontencoding{T2A}\selectfont%%% using this line has no effect.
%\CYRL\cyre\cyro\cyrn\cyri\cyrd\ \CYRV\cyri\cyrt\cyra\cyrl\cyrsftsn\cyre\cyrv\cyri\cyrch\ \CYRK\cyra\cyrn\cyrt\cyro\cyrr\cyro\cyrv\cyri\cyrch%%% or same as
Леонид Витальевич Канторович%
}
\end{document}
到https://texlive.net/run现在,在 2022-08-03,或者从 2022 年 5 月 4 日起在 Debian 稳定版中安装 TeX Live,可获得具有可扩展字体的版本:
pdflatex
而从 Debian 中的当前 TeX Live输入相同的输入会产生一个带有位图字体的版本:
显然,第一个(在我看来,可扩展的)输出更可取,而第二个输出的粗糙度有时会以令人不快的方式表现出来。哪个变化导致了这种恶化?为什么要这样做?有没有简单的开关或命令可以让可扩展的俄语/西里尔字体重新出现在 Debian 中(最好不加载额外的软件包)?
我在 Debian 中使用的版本:
texlive
软件包版本:2021.20211217-1pdfTeX,版本 3.141592653-2.6-1.40.22(TeX Live 2022/dev/Debian)(预加载格式=pdflatex 2022.1.7)
LaTeX2e <2021-11-15> 补丁级别 1
L3编程层 <2021-11-22>
独立 2018/03/26 v1.3a
fontenc 2021/04/29 v2.0v
输入enc 2021/02/14 v1.3d
巴贝尔 2021/11/29 3.67
russianb.ldf 2021/01/10 1.3m
ngerman 2021/02/27 v2.13
ngermanb 2021/02/27 v2.13
newtxttext 2021/10/13 v1.658
答案1
位图西里尔字体意味着您拥有的 TeX 发行版不完整,缺少 CM-Super 字体。但将 CM 与 Times 克隆混合并不是最好的选择。
另一方面,NewTX 字体不支持西里尔文,但不难看出pdflatex
使用兼容的字体系列(即 Tempora)可以支持俄语部分。
这需要 2020 年 2 月或之后发布的 LaTeX。
\documentclass{article}
\usepackage[T2A,T1]{fontenc}
%\usepackage[utf8]{inputenc}
\usepackage[russian,ngerman]{babel}
\usepackage{newtxtext}
\AtBeginDocument{%
\DeclareFontFamilySubstitution{T2A}{\rmdefault}{Tempora-TLF}%
}
\begin{document}
\foreignlanguage{russian}{Леонид Витальевич Канторович}
\textit{\foreignlanguage{russian}{Леонид Витальевич Канторович}}
\textbf{\foreignlanguage{russian}{Леонид Витальевич Канторович}}
\end{document}
我们需要\AtBeginDocument
因为newtxtext
的重新定义而延迟\rmdefault
到最后一刻。
为了查看字体是否匹配,以下是输出
eo\textsc{h}\foreignlanguage{russian}{еон}
小型大写字母 h 比 н 宽一点,但这并不是什么问题。
答案2
你在评论中写道,
是的,我看到我获得了类似 Computer-Modern 的字体。有没有办法获得类似 Times 的字体?
我不太熟悉 Debian,但我认为最好的选择是从 pdfLaTeX 切换到 LuaLaTeX 或 XeLaTeX,使用该fontspec
软件包,并使用 (a) 接近 Times Roman 和 (b) 具有西里尔字母的系统字体。
例如,我的系统(MacOS 12.5 “Monterey”,MacTeX2022)自带一种名为“Times New Roman”的系统字体。在 LuaLaTeX 下编译下面显示的测试代码,得到以下截图:
\documentclass[border=1pt]{standalone}
\usepackage{iftex}
\ifpdftex
\usepackage[T1,T2A]{fontenc}
\usepackage{newtxtext} % lacks easy-to-access Cyrilic glyphs, sadly
\else
\usepackage{fontspec}
\setmainfont{Times New Roman} % choose an available font with Cyrillic glyphs
\fi
\usepackage[russian,ngerman]{babel}
\begin{document}
\foreignlanguage{russian}{Леонид Витальевич Канторович}
\end{document}