I'm using XeLaTeX in order to have access to certain opentype Unicode fonts, including Calluna. However, XeLaTeX refuses to display certain characters which exist in the font. I know they exist in the font because I can see them in charactermap, and Windows can display them just fine in other applications. The characters also display just fine when entered into TeXworks.
Unfortunately, when processed by XeLaTeX (with TeXworks) the characters are replaced with the "no character" placeholder from that font.
Screenshot below, showing the raw XeLaTeX, pdf generated (it displays the same in adobe acrobat), and charactermap:
And here's the demo code:
\documentclass[10pt,letterpaper]{article}
\usepackage{fontspec}
\setmainfont[Numbers=Lining]{Calluna}
\setsansfont[Numbers=Lining]{Museo Sans 300}
\begin{document}
◆●■▲◄►▼◎∴∑→㎏€\\
\textsf{◆●■▲◄►▼◎∴∑→㎏€}
\end{document}
TeXworks is set to its default encoding, which is UTF-8.
The log file reveals that XeTeX believes the characters are missing; however they clearly are not, based on charactermap:
Missing character: There is no ◆ in font Calluna/ICU:script=latn;language=DFL
T;+lnum;!
Missing character: There is no ● in font Calluna/ICU:script=latn;language=DFL
T;+lnum;!
Missing character: There is no ■ in font Calluna/ICU:script=latn;language=DFL
T;+lnum;!
Missing character: There is no ◎ in font Calluna/ICU:script=latn;language=DFL
T;+lnum;!
Missing character: There is no ∴ in font Calluna/ICU:script=latn;language=DFL
T;+lnum;!
Missing character: There is no ㎏ in font Calluna/ICU:script=latn;language=DFL
T;+lnum;!
Is there any way to fix this?
\textsf{}
) exists in that font. – Ch'en Meng Oct 17 '13 at 7:27