我尝试用希伯来语写一篇摘要。
我使用 MikTeX2.9 和 TeXnicCenter 编辑器。
这是我的 MWE:
\documentclass[12pt]{article}
\usepackage[english,bidi=default]{babel} %bidi=default with xelatex
\babelprovide[import,main]{hebrew}
\babelfont{rm}[Language=Default]{Latin Modern Roman}
\babelfont[hebrew]{rm}{DejaVu Sans}
%\babelfont[hebrew]{rm}{Noto Sans Hebrew}
\begin{document}
\begin{center}
\Huge
\textbf{תקציר}
\end{center}
ניסוי ותהייה, או ניסוי וטעיה?
\selectlanguage{english} some text
\end{document}
当我使用 XeLaTeX 编译它时,没有出现任何错误,但出现 1 条警告:
Package fontspec Warning: 'Language 'Hebrew' not available for font 'DejaVu Sans' with script 'Hebrew' 'Defualt' language used instead'
在生成的 pdf 中我看到的是问号而不是希伯来字母。
如果有人能一步一步地告诉我如何使希伯来语字体“DejaVu Sans”能够使用希伯来语,我将不胜感激。
答案1
我需要删除让 MWE 与 Babel 3.22 一起编译import
的选项\babelprovides
。这样做之后,我无法重现您的错误:
\documentclass[12pt]{article}
\usepackage{fontspec}
\usepackage[bidi=default, english]{babel}
\babelprovide[main]{hebrew}
\defaultfontfeatures{ Ligatures = TeX, Scale = MatchUppercase }
\babelfont{rm}[Language=Default, Scale = 1.0]{DejaVu Serif}
\babelfont[hebrew]{rm}[Language = Default]{DejaVu Sans}
\begin{document}
\begin{minipage}{10cm} % To fit both RTL and LTR text inside a TeX.SX image.
\section*{תקציר}
ניסוי ותהייה, או ניסוי וטעיה?
\selectlanguage{english}
some text
\end{minipage}
\end{document}
您是否正在使用最新版本的 DejaVu Sans,并使用 XeTeX 进行编译?字体的 2.37 版本包含我需要的字形。
“语言‘希伯来语’不可用”警告是转移注意力的借口。它只是意味着您选择的字体未声明该 OpenType 字体功能。支持希伯来语脚本非常重要,因为这是双向文本正常工作所必需的,但语言仅当存在两种使用希伯来语文字且行为不同的语言时,该功能才会起作用。(例如,选择土耳其语会将 i 的小写形式更改为 İ,将 I 的小写形式更改为 ı。)
您可以采用与英语相同的方式抑制这个无害的警告消息:添加[Language = Default]
到 的选项中\babelfont
。