完整的 TeX Live 2014ucharclasses
包不再适用于fontspec
。 它适用于 BasicTeX 2014,因为 BasicTeX 2014 使用了 2013 年旧版本的字体规范。
下面是一个示例文档,它适用于fontspec
2013 版,但不再适用于fontspec
完整版 TeX Live 2014 版:
\documentclass[12pt]{article}
\usepackage{fontspec}
\defaultfontfeatures{Mapping=tex-text}
\usepackage[Latin, Thai]{ucharclasses}
\setDefaultTransitions{\fontspec{Hoefler Text}}{}
\setTransitionTo{Thai}{\fontspec[Scale=1]{Thonburi}}
\begin{document}
Test ไทย
\end{document}
有人知道如何修复它吗?
答案1
我猜这是由于 的新语法造成的问题\fontspec
。无论如何,最好事先声明字体:
\documentclass[12pt]{article}
\usepackage{fontspec}
\defaultfontfeatures{Mapping=tex-text}
\setmainfont{Hoefler Text}
\newfontfamily{\thaifont}{Thonburi}[Scale=MatchLowercase]
\usepackage[Latin, Thai]{ucharclasses}
\setTransitionTo{Thai}{\thaifont}
\setTransitionFrom{Thai}{\normalfont}
\begin{document}
Test ไทย Test
\end{document}