當使用lualatex編譯beamer文檔時,我使用fontspec
套件沒有問題。但是,當像 MWE 中那樣設定其編碼時,我總是收到此錯誤
套件 fontspec 的選項衝突
我應該fontspec
在不指定編碼的情況下加載嗎?
\documentclass[lualatex]{beamer}
\usepackage{pgfpages,blindtext}
\usetheme{metropolis}
\usepackage[tuenc]{fontspec}
\begin{document}
\begin{frame}
\blindtext
\end{frame}
\end{document}
答案1
\documentclass[lualatex]{beamer}
\usepackage{pgfpages,blindtext}
\usetheme{metropolis}
\begin{document}
\begin{frame}
\blindtext
\end{frame}
\end{document}
應該可以。運行時lualatex
fontspec 已經載入了tuenc
定義檔:
[...](/usr/local/texlive/2017/texmf-dist/tex/latex/fontspec/fontspec-luatex.sty(/usr/local/texlive/2017/texmf-dist/tex/latex/base/ fontenc.sty (/usr/local/texlive/2017/texmf-dist/tex/latex/base/tuenc.def)) (/usr/local/texlive/2017/texmf-dist/tex/latex/fontspec/fontspec。 cfg)(加載luc: [...]
答案2
在內部,metropolis 主題對 xetex 或 luatex 執行以下操作:
\@ifpackageloaded{fontspec}{
\PassOptionsToPackage{no-math}{fontspec}
}{
\RequirePackage[no-math]{fontspec}
}
這意味著,只需切換載入包的順序(fontspec
之前metropolis
)即可消除選項衝突錯誤。然而,正如所指出的烏爾里克費雪在她的評論中,將選項傳遞給已載入的套件也沒有太大意義。所以你可以:
\documentclass[lualatex]{beamer}
\usepackage{pgfpages,blindtext}
\PassOptionsToPackage{tuenc}{fontspec}
\usetheme{metropolis}
\begin{document}
\begin{frame}
\blindtext
\end{frame}
\end{document}