TeX 无法生成希伯来语文本的输出:缺少耶路撒冷字体度量文件

TeX 无法生成希伯来语文本的输出:缺少耶路撒冷字体度量文件

我在 Windows 机器上安装了 MiKTeX。

我有这个简单的文档,我正在尝试使用希伯来语:

\documentclass[12pt]{article}
\usepackage{ucs}   % package to add unicode support
\usepackage[utf8x]{inputenc}  % adding the UTF-8 encoding
\usepackage[english,hebrew]{babel}
\usepackage{hebfont}
\begin{document}
\sethebrew
Hello world % \textshold{   שלום עולם!}
\end{document}

编译器对我说:

Package babel Warning: No hyphenation patterns were loaded for
(babel)                the language `Hebrew'
(babel)                I will use the patterns loaded for \language=0 instead.

)) ("D:\MiKTeX 2.9\tex\generic\babel\lheenc.def")
("D:\MiKTeX 2.9\tex\generic\babel\hebfont.sty") (C:\u1.aux)
("D:\MiKTeX 2.9\tex\generic\babel\lhecmr.fd")
("D:\MiKTeX 2.9\tex\latex\ucs\ucsencs.def")Running miktex-makemf.exe...
miktex-makemf: The jerus source file could not be found.
Running hbf2gf.exe...

hbf2gf (CJK ver. 4.8.0)

Couldn't find `jerus.cfg'
miktex-maketfm: No creation rule for font jerus10.

! Font LHE/cmr/m/n/12=jerus10 at 12.0pt not loadable: Metric (TFM) file not found.

问题是什么?

答案1

缺乏连字符模式并不是问题,因为提及

您很可能缺少合适的希伯来语字体。下载并安装 Culmus 包。如果您在 Windows 上使用 MiKTeX,请从这里。如果你使用的是 Linux,你的发行版应该有支持希伯来语的 LaTeX 软件包或特定的 Culmus 软件包;或者你可以下载两个 ivritex tarball,其中之一包括 Culmus 字体。

此外,没有必要使用\hebfont;看看来源看看它提供了什么(即使你不是 LaTeX 专家,它也非常易读)。

如果由于某种原因安装 Culmus 无法解决问题,请尝试按照说明操作这里;它们适用于 TeXLive,但也可能适用于 MiKTeX。

答案2

使用 TeX 排版希伯来语的一种方法是使用多语包,它需要XeLaTeX引擎而不是通常的LaTeXpdfLaTeX

所有现代 TeX 实现都包含该程序。要从命令行XeLaTeX运行,只需键入而不是通常的或。如果您通常从文本编辑器中的按钮运行 LaTeX,则应该有一个设置可以将其更改为 XeLaTeX。 XeLaTeXxelatexlatexpdflatex取决于编辑器,在 TeX 源文件顶部添加以下“TeX 指令”可能会指示编辑器自动使用 XeLaTeX:

% !TeX TS-program = xelatex

(确保同一行上没有其他内容,甚至没有后续注释。)

下面说明了 Polyglossia 的基本用法,其中的文档包含英语和希伯来语。

重要提示:该线路\setotherlanguage{hebrew}加载比迪包,因此此行必须在大多数其他包加载后运行,否则将生成“Package bidi Error”。因此,如果您需要任何其他\usepackage行,请确保将它们放在此行之前。

插入在括号后面的强制参数中的字体名称\newfontfamily可以是系统上包含希伯来字符的任何字体。(在我的示例中为SBL Hebrew.)字体名称前后的括号内不得有多余的空格(因此,例如{ SBL Hebrew}{SBL Hebrew }不起作用)。可选参数[Script=Hebrew]对于正确放置元音(nekudot)是必需的。

% !TeX program = xelatex
\documentclass{article}
\usepackage{polyglossia}
\usepackage{xltxtra}

\defaultfontfeatures{Mapping=tex-text, Scale=MatchLowercase}
\setdefaultlanguage{english}
\setotherlanguage{hebrew}
\newfontfamily\hebrewfont[Script=Hebrew]{SBL Hebrew}

\begin{document}
This is a regular paragraph in English.

\begin{hebrew}
עכשיו אני כותב קטע שלם בעברית.
\end{hebrew}

Now back to English, the default language.

I will insert some \texthebrew{מלים בעברית} into this sentence.

\begin{hebrew}
עכשיו אני כותב קטע בעברית עם \textenglish{English words} באמצע.

אֶפְשָׁר לִכְתּוֹב גַּם עִם נְקוּדוֹת!
\end{hebrew}

\end{document}

相关内容