XeLaTeX 下以 \grq 结尾的单引号错误

XeLaTeX 下以 \grq 结尾的单引号错误

我在使用下的包\grq时遇到了字形问题。germanxelatex

\documentclass{article}

\usepackage{libertine}
\usepackage{german}

\begin{document}
\glq test\grq
\end{document}

xelatex输出错误的结尾引文并引发字体警告:

在此处输入图片描述

LaTeX 字体警告:字体形状“OT1/LinLibertine(0)/m/n”未定义(字体),在输入第 7 行中使用“OT1/cmr/m/n”(字体)代替符号“grq”。

然而,它看起来应该像这样,并且pdflatex做对了:

在此处输入图片描述

知道出了什么问题吗?

答案1

您不应该使用german过时的、仅用于与旧文档兼容的软件包。

但是, 也存在此问题babel。我将添加代码来解决这个问题。

\documentclass{article}

\usepackage[ngerman]{babel}
\usepackage{libertine}
\usepackage{ifxetex}

\ifxetex
  \DeclareTextSymbol{\glq}{\encodingdefault}{"201A}
  \DeclareTextSymbol{\grq}{\encodingdefault}{"2018}
  \DeclareTextSymbol{\glqq}{\encodingdefault}{"201E}
  \DeclareTextSymbol{\grqq}{\encodingdefault}{"201C}
\fi

\begin{document}

\glq test\grq

\glqq test\grqq

\end{document}

在此处输入图片描述

但请注意,如果您使用 XeLaTeX,则可以直接输入字符:

‚test‘

„test“

输出将是相同的。

相关内容