我正在用希腊语编写一个 beamer 演示语言。大写希腊字体显示,小写字体不显示。我正在使用 xelatex。
\documentclass[xelatex]{beamer}
\usepackage{xgreek}
\usepackage[polutonikogreek,british]{babel} \usetheme{Warsaw}
\title{ΜΙΚΡΗ ἱστορία ἑνός ἱστορικοῦ πανεπιστημίου} \subtitle[Short Title]{ΔΙΑΣΗΜΟΙ ἐρευνητές} \author{Dr. Σπυρίδων Καναβός} \institute{Iamblichus} \
date
\begin{document}
\begin{frame}
\titlepage
\end{frame}
\end{document}
答案1
您可以配置 Babel 自动检测希腊文或拉丁文脚本,并为您更改语言(包括字体和连字模式),无需任何额外的\selectlanguage
命令\foreignlanguage
。在 XeTeX 中:
\documentclass[xelatex]{beamer}
%\usepackage{xgreek}
\usepackage[polutonikogreek,british]{babel}
\usepackage[GreekAndCoptic,GreekExtended]{ucharclasses} % For auto-detecting language.
\setDefaultTransitions{\selectlanguage{british}}{\selectlanguage{british}}
\setTransitionTo{GreekAndCoptic}{\selectlanguage{polutonikogreek}}
\setTransitionTo{GreekExtended}{\selectlanguage{polutonikogreek}}
% Load a font family that supports polytonic Greek:
\babelfont{rm}{NewComputerModern10}
\babelfont{sf}{NewComputerModernSans10}
\babelfont{tt}{NewComputerModernMono10}
\usetheme{Warsaw}
\title{ΜΙΚΡΗ ἱστορία ἑνός ἱστορικοῦ πανεπιστημίου}
\subtitle[Short Title]{ΔΙΑΣΗΜΟΙ ἐρευνητές}
\author{Dr. Σπυρίδων Καναβός}
\institute{Iamblichus}
\begin{document}
\begin{frame}
\titlepage
\end{frame}
\end{document}
对于其他引擎,请参阅这里的 MWE。
附言
在评论中,您说我使用的字体命令不起作用。实际上,我自己并没有使用完全正确的字体命令,并且它无法正确切换到 New Computer Modern 08 的脚注大小。
NewComputerModern.fontspec
文件中或可能在 中存在错误fontspec
,导致fontspec
无法在要加载的块之外找到默认文件SizeFeatures=
。目前,这里有一个简单的解决方法(如果原始方法无效,则可能对您无效)和一个更强大的方法。
简单的解决方法是更改为
\babelfont{rm}{CMU Serif}
\babelfont{sf}{CMU Sans Serif}
\babelfont{tt}{CMU Typewriter Text}
或者您选择的任何其他字体,例如 Libertinus Serif/Sans/Mono。
如果 XeTeX 找不到这些名称(或NewComputerModernSans10
),则表示您的字体未在fc-cache
数据库中正确编入索引。正确的解决方案将因您的操作系统和 TeX 发行版而异。例如,在 Debian 或 Ubuntu Linux 上自定义 TeX Live 安装时,命令如下:sudo ln -s $(kpsewhich texlive-fontconfig.conf) /etc/fonts/conf.d/09-texlive.conf
,然后重新运行fc-cache -f -s -v
。
更可靠的解决方案是使用 等找到配置kpsewhich NewComputerModern.fontspec
,将内容复制到您的前言中,然后自己进行必要的修复。这里,即:
\documentclass[xelatex]{beamer}
%\usepackage{xgreek}
\usepackage[polutonikogreek,british]{babel}
\usepackage[GreekAndCoptic,GreekExtended]{ucharclasses} % For auto-detecting language.
\setDefaultTransitions{\selectlanguage{british}}{\selectlanguage{british}}
\setTransitionTo{GreekAndCoptic}{\selectlanguage{polutonikogreek}}
\setTransitionTo{GreekExtended}{\selectlanguage{polutonikogreek}}
\usepackage{fontspec}
\defaultfontfeatures[NewComputerModernSans]
{
Extension = .otf ,
UprightFont=NewCMSans10-Regular,
SizeFeatures={%
{Size= -8, UprightFont=NewCMSans08-Regular,%
ItalicFont=NewCMSans08-Oblique,%
BoldFont=NewCMSans10-Bold,%
BoldItalicFont=NewCMSans10-BoldOblique,%
SmallCapsFeatures={Numbers=OldStyle}},
{Size= 8, UprightFont=NewCMSans08-Regular,%
ItalicFont=NewCMSans08-Oblique,%
BoldFont=NewCMSans10-Bold,%
BoldItalicFont=NewCMSans10-BoldOblique,%
SmallCapsFeatures={Numbers=OldStyle}},
{Size= 9-, UprightFont=NewCMSans10-Regular,%
ItalicFont=NewCMSans10-Oblique,%
BoldFont=NewCMSans10-Bold,%
BoldItalicFont=NewCMSans10-BoldOblique,%
SmallCapsFeatures={Numbers=OldStyle}}
}}
% Load a font family that supports polytonic Greek:
%\babelfont{rm}{NewComputerModern}
\babelfont{sf}{NewComputerModernSans}
%\babelfont{tt}{NewComputerModernMono}
\usetheme{Warsaw}
\title{ΜΙΚΡΗ ἱστορία ἑνός ἱστορικοῦ πανεπιστημίου}
\subtitle[Short Title]{ΔΙΑΣΗΜΟΙ ἐρευνητές}
\author{Dr. Σπυρίδων Καναβός}
\institute{Iamblichus}
\begin{document}
\begin{frame}
\titlepage
\end{frame}
\end{document}
UprightFont=
该错误的解决方法是下的第一行\defaultfontfeatures
。
答案2
首先,根据相关问题,由于 beamer 使用 sans 字体,因此在执行(命令,需要包)时,告诉babel
sans()要使用哪种字体;其次,对于 xelatex,告诉使用哪种语言(lualatex 可以自动检测脚本并切换字体)。sf
polutonikogreek
\babelfont
fontspec
babel
\selectlanguage{polutonikogreek}
在示例中,我将字体设置为 Noto Sans,但sf
如果您发现清晰易读且合适,也可以将字体系列设置为 Noto Serif(或其他字体)。
平均能量损失
\documentclass[xelatex]{beamer}
\usetheme{Warsaw}
\usepackage{fontspec}
\usepackage[polutonikogreek,british]{babel}
\babelfont[polutonikogreek]{sf}{Noto Sams}
\usepackage{xgreek}
\title{ΜΙΚΡΗ ἱστορία ἑνός ἱστορικοῦ πανεπιστημίου}
\subtitle[Short Title]{ΔΙΑΣΗΜΟΙ ἐρευνητές}
\author{Dr. Σπυρίδων Καναβός} \institute{Iamblichus}
\begin{document}
\selectlanguage{polutonikogreek}
\begin{frame}
\titlepage
\end{frame}
\end{document}