Linux 如何处理Xeletex文档中的unicode字符串?

Linux 如何处理Xeletex文档中的unicode字符串?,linux,unicode,latex,Linux,Unicode,Latex,之前的一个问题让我想到了Xeletex(关于LaTeX和Unicode)。现在我有了这个文件: \documentclass[a4paper]{article} \usepackage[cm-default]{fontspec} \usepackage{xunicode} \usepackage{xltxtra} \setmainfont[Mapping=tex-text]{Arial} \begin{document} গ a ä ͷ \end{document} 使用“Arial”字体时

之前的一个问题让我想到了Xeletex(关于LaTeX和Unicode)。现在我有了这个文件:

\documentclass[a4paper]{article}
\usepackage[cm-default]{fontspec}
\usepackage{xunicode}
\usepackage{xltxtra}
\setmainfont[Mapping=tex-text]{Arial}
\begin{document}
গ a ä ͷ 
\end{document}
使用“Arial”字体时,仅显示a和ä,其他两个字符仅各为一个方框。如果删除\setmainfont命令,则仅显示a。如果我将“Arial”更改为“Linux Libertine”,我将收到一条错误消息:

非法名称“Linux Libertine”: 包含“”

这令人恼火,因为维基百科关于Xeletex的示例有一个包含空格的字体名


要使所有给定的字符显示在我的pdf文档中,我必须做些什么?

显然,您需要字体来支持Unicode字符。TeX Gyre Pagella,正如建议的那样,适用于我的一些中欧变音字符和西里尔文。

如果字体安装正确,它们应该按预期工作(至少它们适用于我)。但是,Arial和Linux Libertine都不包含所有四个字符。特别是第一个字符仅由少量字体支持(请参阅)。以下示例正确使用并显示所有字符:

\documentclass[a4paper]{article}
\usepackage{fontspec}
\usepackage{xunicode}
\usepackage{xltxtra}
\setmainfont{Code2000}
\begin{document}
গ a ä ͷ 
\end{document}

您可能无法使用XeTeX或Xeletex加载TeX Gyre Pagela。切换回常规乳胶,并在前言中这样做:

\usepackage[T1]{fontenc}
\usepackage{tgpagella}

啊,我明白了,;我真该试试你的例子。字体的OpenType名称不是
Linux Libertine
,而是
Linux Libertine O
。或者,您可以使用PostScript名称:

\setmainfont{LinLibertineO}

不过,这种字体也没有这四个字符。你们可能很难找到这样的答案。

很抱歉这么晚才回答,但我确实做了我想做的:


问候

你可以গ 通过Vrinda字体。这没有帮助,与Linux Libertine相同的错误消息:非法fontname`TeX Gyre Pagela':包含“”奇怪,我在您的示例中得到了相同的错误,但它确实适用于TeX Gyre Pagela。你确定你安装了正确的字体吗?如果系统中安装了TeX Gyre字体,它们可以毫无问题地加载到fontspec中。另外,请参阅上面的评论:这没有帮助,与Linux Libertine相同的错误消息:非法fontname“TeX Gyre Pagella”:包含“”–Julian Dayed。