我遇到了一个大问题,我不知道发生了什么,但编译后 PDF 文件中突然不显示希腊字符!我甚至复制粘贴了旧的 TeX 代码,效果很好,但现在内部 PDF 查看器和 PDF 文件中都不显示希腊字符!我删除并重新安装了 TeX Live 和 TeXstudio,但没有帮助。你知道我为什么开始遇到这个问题吗?如果这很重要的话,我使用 Ubuntu。
\documentclass{article}
\usepackage{ucs}
\usepackage[utf8x]{inputenc}
\usepackage[greek,english]{babel}
\newcommand{\en}{\selectlanguage{english}}
\newcommand{\gr}{\selectlanguage{greek}}
\begin{document}
\en
Α line of text in English.
\gr
Μια γραμμή κειμένου στα Ελληνικά.
\end{document}
答案1
问题中的文件可以用 进行编译pdflatex
。使用lualatex
或进行编译xelatex
不会显示错误,但缺少希腊字形。
错误信息如下pdflatex
:
! LaTeX Error: Command \textAlpha unavailable in encoding OT1.
原因Α
是英语文本为 U+0391(希腊大写字母 ALPHA)。应将其替换为 ASCII 字母A
U+0041(拉丁大写字母 A)。
答案2
如果希腊字符“突然”消失,而源文件没有发生变化,则最可能的原因是使用xelatex
或lualatex
代替进行编译pdflatex
。
Xe/LuaTeX 的默认字体是“Latin Modern”,正如其名称所示,它支持拉丁文但不支持希腊文。您必须使用“fontspec”为整个文档设置不同的字体,或使用“babel”或“polyglossia”为希腊文部分设置不同的字体。Babel 指南中有一小节“选择字体”。
不幸的是,控制台上没有报告缺失的字符。但是,有如下警告:
Missing character: There is no ι (U+03B9) in font [lmroman10-regular]:+tlig;!
Missing character: There is no α (U+03B1) in font [lmroman10-regular]:+tlig;!
Missing character: There is no γ (U+03B3) in font [lmroman10-regular]:+tlig;!
在.log
文件中。