在 Overleaf 中使用 babel 和 fontspec 来进行多语言输入

142 篇文章 4 订阅
15 篇文章 0 订阅

原  文:Multilingual typesetting on Overleaf using babel and fontspec
译  者:Xovee
翻译时间:2021年3月17日

在2019年9月,Overleaf 更新到 TeX Live 2018,这意味着除了polyglossia包,你现在可以使用babel包、XeLaTeX 或者 LuaLaTeX 编译器来在多语言输入中指定字体。

本篇博客是我们之前的一篇博客(在 Overleaf 中使用 ployglossia 和 fontspec 来进行多语言输入)的后续。在本文中,我们介绍如何使用babel包中的\babelprovidebabelfont命令来重现上一篇文章中使用polyglossia包实现的例子。

使用 babel 和 \babelfont 来在一个文档中进行多语言输入

为了重现我们上一篇文章中的例子(法语为主语言,还包括英语、俄语和泰语字符),你现在可以使用babel来输入英语、俄语和法语的文本,使用\babelprovide命令来支持泰语的输入。\babelfont命令可以用来设置文档的字体,例如,FreeSerif、FreeSans、FreeMono等,它们可以提供足够的输入拉丁、西里尔、泰语字符的支持。

\usepackage[english,russian,main=french]{babel}
\babelprovide[import]{thai}
\babelfont{rm}[Language=Default]{FreeSerif}
\babelfont{sf}[Language=Default]{FreeSans}
\babelfont{tt}[Language=Default]{FreeMono}
 
\begin{document}
\begin{abstract}
Le Lorem Ipsum est simplement du faux texte employé dans 
la composition et la mise en page avant impression.
\end{abstract}
 
Merci. \foreignlanguage{english}{Thank you.} \foreignlanguage{russian}{Спасибо.} Et plus de
texte en français!
 
Le Lorem Ipsum est le faux texte standard ...
 
\begin{otherlanguage}{english}

Lorem Ipsum is simply dummy text ...
\end{otherlanguage}
 
\begin{otherlanguage}{russian}
Lorem Ipsum - это текст-`\textsf{рыба}', часто используемый в 
\texttt{печати} и вэб-дизайне. ...
\end{otherlanguage}
 
\begin{otherlanguage}{thai}
\foreignlanguage{english}{Lorem Ipsum} คือ เนื้อหาจำลองแบบเรียบๆ ที่ใช้กันในธุรกิจงานพิมพ์หรืองานเรียงพิมพ์
\end{{otherlanguage}}

在这里插入图片描述

因为文档的主语言设置为了法语,所以文档会使用法语的输入惯例:例如法语的连字特征、标点符号和一些自动转换的关键字,例如使用 Résumé 而不是 Abstract。你可以使用\foreignlanguage{language}{...}命令来插入一些简短的其他语言的文字。对于其他语言的长的段落,你可以使用下面的环境

\begin{otherlanguage}{language}

...

\end{otherlanguage}

混合从左到右书写和从右到左书写的文字

将一篇文档的主语言设置为阿拉伯语的命令为\babelprovide[import,main]{arabic}。我们还需要将文档的文字方向设置为从右到左:


\usepackage[english,bidi=default]{babel}
\babelprovide[import,main]{arabic}
\babelfont[arabic]{rm}{Amiri}

\begin{document}
ما هو \foreignlanguage{english}{differentiation}
\end{document}

在这里插入图片描述

为指定的语言设置字体

你可以为特定的语言指定字体。在我们的法语-英语-俄语-泰语例子中,你可以使用下面的代码:

\babelfont[english]{rm}{Free Chancery}
\babelfont[*cyrillic]{rm}{Charis SIL}
\babelfont[thai]{rm}{Garuda}

来使用 Free Chancery 输入英语,使用 Charis SIL 来输入所有的西里尔字符(包括俄语),以及使用 Garuda 输入泰语。

在这里插入图片描述
下面是另外一个例子:使用 Devanagari 字体来输入 Hindi 和 Sanskrit 语:

\usepackage[english]{babel}
%% Each \babelprovide can only be used for one language
\babelprovide[import]{hindi}
\babelprovide[import]{sanskrit}
\babelfont[*devanagari]{rm}{Lohit Devanagari}
...
Hindi: \foreignlanguage{hindi}{हिन्दी}
Sanskrit: \foreignlanguage{sanskrit}{संस्कृतम्}

在这里插入图片描述

定义其他的字体系列

在下面的例子中,我们显式地为希伯来文设定了 sans serif 字体,因为我们希望使用 sans serif 来显示章节的标题:

\babelprovide[main,import]{hebrew}
\babelfont[hebrew]{rm}{Hadasim CLM}
\babelfont[hebrew]{sf}{Miriam CLM}

\usepackage{titlesec}
\titleformat{\section}{\Large\sffamily\bfseries}{\thesection}{1em}{}
...
\section{מבוא}

זוהי עובדה מבוססת שדעתו של הקורא תהיה מוסחת עלידי טקטס קריא כאשר הוא יביט בפריסתו.

在这里插入图片描述

延伸阅读

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值