错误信息是:
xdvipdfmx:fatal: CID count > 65535
我是 TeX 新手。我尝试查看 .log、.out 和 .aux 文件,但似乎没有任何效果。我的 Mac 刚刚安装了 MacTex 2014。尝试使用 XeLaTex 进行编译时,TeXstudio 和 TeXShop 都出现了错误。
[更新] 我设法将源代码缩减为以下代码片段,这会在我的 Mac 上触发错误:
\documentclass[10pt,a4paper]{article}
\usepackage{amsmath, amsfonts, amssymb}
\usepackage{fontspec}
\defaultfontfeatures{Ligatures=Rare}
\setmainfont{Hoefler Text}
\begin{document}
$\mathbf{\Sigma}$
\end{document}
答案1
我可以用 Hoefler Text、Palatino 和 Optima 重现该问题;我怀疑这些字体在诸如此类的极限情况下存在一些问题。
然而,问题是由 引起的\mathbf{\Sigma}
。发生的事情是将\mathbf
数学组设置为 5(对于示例文件,数字不是固定的),相应的字体是
\EU1/HoeflerText(0)/bx/n/10=select font "Hoefler Text Black/AAT:mapping=tex-text;"
"06
这样的字体在的目标插槽中没有任何内容\Sigma
,该插槽定义为数学字符"7406
("7
表示变量系列,"4
表示默认数学组,"06
插槽)。虽然这对某些字体来说似乎无害,但它会给上面列出的字体带来问题。以下是 的日志xdvipdfmx
:
DVI Comment: XeTeX output 2014.12.30:1141
<AGL:texglyphlist.txt><AGL:pdfglyphlist.txt><AGL:glyphlist.txt>[1<[/Library/Fonts/Hoefler Text.ttc:1]@9.93pt<NATIVE-FONTMAP:[/Library/Fonts/Hoefler Text.ttc:1]/H/65536/0/0>
fontmap: [/Library/Fonts/Hoefler Text.ttc:1]/H/65536/0/0 -> /Library/Fonts/Hoefler Text.ttc(Identity-H)[index:1]
pdf_font>> Input encoding "Identity-H" requires at least 2 bytes.
pdf_font>> The -m <00> option will be assumed for "/Library/Fonts/Hoefler Text.ttc".
(CID:HoeflerText-Black)
pdf_font>> Type0 font "/Library/Fonts/Hoefler Text.ttc" cmap_id=<Identity-H,0> opened at font_id=<[/Library/Fonts/Hoefler Text.ttc:1]/H/65536/0/0,0>.
><[/Library/Fonts/Hoefler Text.ttc]@9.93pt<NATIVE-FONTMAP:[/Library/Fonts/Hoefler Text.ttc]/H/65536/0/0>
fontmap: [/Library/Fonts/Hoefler Text.ttc]/H/65536/0/0 -> /Library/Fonts/Hoefler Text.ttc(Identity-H)
pdf_font>> Input encoding "Identity-H" requires at least 2 bytes.
pdf_font>> The -m <00> option will be assumed for "/Library/Fonts/Hoefler Text.ttc".
(CID:HoeflerText-Regular)
pdf_font>> Type0 font "/Library/Fonts/Hoefler Text.ttc" cmap_id=<Identity-H,0> opened at font_id=<[/Library/Fonts/Hoefler Text.ttc]/H/65536/0/0,1>.
>][2]
otf_cmap>> Creating ToUnicode CMap for "/Library/Fonts/Hoefler Text.ttc"...
No Unicode mapping available: GID=65535, name=
otf_cmap>> Creating ToUnicode CMap for "/Library/Fonts/Hoefler Text.ttc"...
(CID:/Library/Fonts/Hoefler Text.ttc[XUAFQG+HoeflerText-Black][CIDFontType2]
xdvipdfmx:fatal: CID count > 65535
也许其他人能从中找出意义。但这只隐藏了主要问题:没有什么无论您使用什么字体作为主文档字体,都无法打印\mathbf{\Sigma}
,因为 OpenType 和 TrueType 字体在插槽中没有任何内容"06
。
解决方案:
\usepackage[no-math]{fontspec}
答案2
顺便说一下,我在使用 Baskerville(使用 macOS Sierra,2016 打包的 .ttc)时遇到了同样的问题,我将其缩小到我的文件中不可见的这个字符:零宽度空格(U+200B)
很难发现!但是当我从源头删除它后,问题就消失了。