LuaLaTeX:使用 `newpxtext` 处理德语特殊字符 ß

LuaLaTeX:使用 `newpxtext` 处理德语特殊字符 ß

我使用包中的 Palatino 字体newpxtext与 LuaLaTeX 结合使用。使用此包无法ß直接设置德语特殊字符:

% Magic comments for TeXstudio
% !TeX spellcheck = de_DE
% !TeX program = lualatex

\documentclass{scrartcl}

%\usepackage{fontspec}
% Font: Palatino
\usepackage{newpxtext}

\begin{document}

Draußen währt am längsten.

Drau\ss en währt am längsten.

\end{document}

MWE 的结果是:DrauSSen währt am längsten.。当我切换到 时它可以工作fontspec

如何使用符号ß来代替\ss设置文本?

答案1

您可以使 ß 处于活动状态并定义它:

\documentclass{scrartcl}
\usepackage{newpxtext}
\catcode`\ß=13
\defß{\ss}
\begin{document}

Draußen währt am längsten.

Drau\ss en währt am längsten.

\end{document}

这或多或少就是 luainputenc 所做的。但最好使用 fontspec:

\documentclass{scrartcl}

\usepackage{fontspec}
\setmainfont{TeX Gyre Pagella} %palatino clone

\begin{document}
Draußen währt am längsten.
\end{document}

答案2

您使用的是哪种输入编码?如果您不使用 fontspec,无论输入编码是什么,您都必须将其指示给 LuaLaTeX。例如,如果您的编辑器配置了 utf8-unicode,则必须插入以下行

\usepackage[utf8]{luainputenc}

在您的程序的序言中。在这种情况下,您的文件对我来说非常完美。

相关内容