前面的一个问题把我带到了XeLaTex (它是关于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和a,其余两个字符各为一个方框。如果删除\setmainfont命令,则只显示a。如果我将"Arial“更改为”Libertine“,则会收到一条错误消息:
非法字体名称“Libertine”:contains‘’
这是令人恼火的,因为维基百科关于XeLaTeX的例子有一个包含空格的字体名。
我要做什么才能使所有给定的字符出现在我的pdf-文档中?
发布于 2009-10-18 20:20:27
如果字体安装正确,它们应该能像预期的那样工作(至少它们为我工作)。然而,Arial和Libertine都不包含所有四个字符。特别是第一个字符只受少量字体的支持(参见这份清单)。下面的示例使用Code2000并正确显示所有字符:
\documentclass[a4paper]{article}
\usepackage{fontspec}
\usepackage{xunicode}
\usepackage{xltxtra}
\setmainfont{Code2000}
\begin{document}
গ a ä ͷ
\end{document}发布于 2009-10-20 02:39:18
啊,我明白了,我真该试试你的例子。字体的OpenType名称不是Linux Libertine,而是Linux Libertine O。或者,您可以使用PostScript名称:
\setmainfont{LinLibertineO}尽管如此,这个字体也没有这四个字符。你可能很难找到这样的人。
发布于 2009-10-18 15:53:19
显然,您需要您的字体来支持您的Unicode字符。TeX Gyre Pagella,如建议的这里,为我工作的一些中欧的二元化字符和西里尔。
https://stackoverflow.com/questions/1585177
复制相似问题