更改 \newcommand 的字体(西里尔文)

更改 \newcommand 的字体(西里尔文)

我不得不

我必须定义(由于 beamer 和其他语言的干扰)西里尔文的环境。我现在如何才能让西里尔文以更美观的西里尔字体显示?

梅威瑟:

\documentclass{article}
\usepackage[utf8]{inputenc}

\usepackage[OT2, T1]{fontenc}
\newcommand{\textcyr}[1]{
{\donothyphenate\fontencoding{OT2}\selectfont #1}}
\newlanguage\nohyphens\newcommand{\donothyphenate}{
\language=\nohyphens}

\begin{document}

Russia \textcyr{izmenitp1}  \emph{izmenit} (tr.) ‘change’ 
 
\end{document}```

答案1

我会用babel它来禁用连字符,但您的方法也很好。

wncyr如果您依赖于音译输入,关键是使用与 Computer Modern 兼容的 Type1 字体的字体系列。

\documentclass{article}
\usepackage[base]{babel}

\usepackage[OT2, T1]{fontenc}

\DeclareFontFamilySubstitution{OT2}{cmr}{wncyr}
\newcommand{\textcyr}[1]{%
  \begin{hyphenrules}{nohyphenation}%
    \fontencoding{OT2}\selectfont #1%
  \end{hyphenrules}%
}

\begin{document}

Russian \textcyr{izmenitp1} \emph{izmenit} (tr.) ‘change’

\end{document}

在此处输入图片描述

答案2

该方法https://tex.stackexchange.com/a/215454/也适用于beamer。我不确定这是否符合您的要求,但也许可以作为起点。字体类似于 Times。下面的 MWE 显示无衬线字体( 中的默认字体beamer)和衬线字体(使用\rmfamily字体开关)。

\documentclass{beamer}
\usepackage[utf8]{inputenc}
\usepackage[T1,T2A]{fontenc}
\usepackage{paratype}
\usepackage{tgpagella}
\usepackage[russian]{babel}
\usepackage{substitutefont}
\substitutefont{T2A}{\rmdefault}{PTSerif-TLF}
\begin{document}
\begin{frame}{Russian in \texttt{beamer}}
Russia изменить \emph{izmenit} (tr.) ‘change’ 

\rmfamily Russia изменить \emph{izmenit} (tr.) ‘change’
\end{frame}
\end{document}

结果:

在此处输入图片描述

请注意,如果您使用 XeLaTeX 或 LuaLaTeX,则可以选择任意字体,例如,请参阅答案的第二部分将 Beamer 中的字体更改为更现代、更时尚的字体

相关内容