我在用从 pctex.com 购买的 Lucida 字体加载多语系统时遇到了问题。我用 Xelatex 进行编译。
\usepackage[romanfamily=bright]{lucimatx}
\usepackage{polyglossia}
\setdefaultlanguage{english}
由于某种原因,polyglossia 似乎总是将字体重置为标准 latex 字体。有办法解决这个问题吗?
答案1
该polyglossia
包需要fontspec
,但是您拥有的 Lucida 字体仅为 T1 编码,而使用所需的编码fontspec
是 EU1(使用 LuaLaTeX 时为 EU2)。
因此,按该顺序加载两个包将覆盖所做的字体选择lucimatx
,因为fontspec
它有自己的字体选择。
您可以更改加载顺序:
\documentclass{article}
\usepackage[no-math]{fontspec} % load fontspec
\let\hbar\undefined % to avoid an error message
\usepackage[romanfamily=bright]{lucimatx}
\AtBeginDocument{\fontencoding{T1}\selectfont} % set the font encoding
\usepackage{polyglossia}
\setdefaultlanguage{english}
\begin{document}
abc
\end{document}
我认为你不会从中得到任何好处。我的建议是使用pdflatex
和babel
:
\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[english]{babel}
\usepackage[romanfamily=bright]{lucimatx}
\begin{document}
abc
\end{document}
实际上,babel
仅仅英语是没有要求的。