我对 latex 还不太熟悉,不太清楚编译器之间的区别,而且我必须启用几个让我抓狂的功能。以这个简单的文档为例:
\documentclass[12pt]{article}
\usepackage{libertinus}
\usepackage{amssymb}
\usepackage{textgreek}
\begin{document}
\textOmega\textsuperscript{$-1$} s\textsuperscript{\textit{\textbeta}}
\addfontfeatures{Style=Alternate}{\textit{J-V}}
\end{document}
如果我使用 pdflatex 编译它,所有希腊字母都会正确显示(使用 libertinus 字体,并在需要时使用斜体)。但是,pdflatex 无法识别命令 \addfontfeatures{Style=Alternate}{},因此它会抛出错误并且不会显示字母斜体 J 的替代样式,请参见此图片:
如果我使用 xelatex(或 lualatex)进行编译,现在 \addfontfeatures{Style=Alternate}{} 可以被识别并正确应用,但希腊字母不再使用 libertinus 字体排版,并且 beta 不再是斜体,请参见图片:
现在我想问:有没有办法可以按照我想要的方式显示希腊字母和斜体 J?
答案1
使用 xelatex,您不需要包textgreek
,您可以直接输入字母本身,但您必须使用fontspec
而不是libertinus
来获取字体。因此 MWE 变成:
\documentclass[12pt]{article}
\usepackage{fontspec}
\setmainfont{Linux Libertine O}
\begin{document}
Ω\textsuperscript{$-1$} s\textsuperscript{\textit{β}}
\addfontfeatures{Style=Alternate}{\textit{J-V}}
\end{document}