
我對乳膠相當陌生,我不太確定編譯器之間的差異,我必須啟用一些讓我發瘋的功能。以這個簡單的文檔為例:
\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}