纯 TeX 中的德语开头(下)引号

纯 TeX 中的德语开头(下)引号

有没有一个好的方法可以在纯 TeX 中获取德语开头(下)引号?

答案1

您可以使用 EC 字体,其中较低的德语引号是连字,,

% define accents for T1 encoding
\def\`#1{{\accent0 #1}}
\def\'#1{{\accent1 #1}}
\def\^#1{{\accent2 #1}}
\def\~#1{{\accent3 #1}}
\def\"#1{{\accent4 #1}}
\def\H#1{{\accent5 #1}}
\def\r#1{{\accent6 #1}}
\def\v#1{{\accent7 #1}}
\def\u#1{{\accent8 #1}}
\def\=#1{{\accent9 #1}}
\def\.#1{{\accent10 #1}}
\def\c#1{%
  \leavevmode\setbox0=\hbox{#1}%
  \ifdim\ht0=1ex
    {\accent11 #1}%
  \else
    {\ooalign{\unhbox0\crcr\hidewidth\char11\hidewidth}}%
  \fi
}

\font\tenrm=ecrm1000
\font\tenit=ecti1000
\font\tenbf=ecbx1000
\font\tensl=ecsl1000

\rm

\hrule
\vskip 1in
\centerline{\bf A SHORT STORY}
\vskip 6pt
\centerline{\sl    by A. U. Thor} % !`?`?! (modified)
\vskip .5cm
Once upon a time, in a distant
  galaxy called \"O\"o\c c,
there lived a computer
named R.~J. Drofnats.

Mr.~Drofnats---or ,,R. J.,'' as
he preferred to be called---% error has been fixed!
was happiest when he was at work
typesetting beautiful documents.
\vskip 1in
\hrule
\vfill\eject

\bye

当然你还需要支持 UTF-8,请参阅https://tex.stackexchange.com/a/163887/4427

在此处输入图片描述

在此处输入图片描述

答案2

这取决于使用的编码。带有 Computer Modern 字体的纯 TeX 不提供此功能,因为 Computer Modern 字体中缺少字符 „。它被插入到各种扩展字体的不同位置。例如,CSfonts 将其插入到插槽 254 中,而 csplain 定义\clqq

\chardef\clqq=254

因此 csplain 的用户将其用作\clqq。或者 T1 编码字体在插槽 18 处有它。但这一切都已成为历史,不建议今天使用。我们有 Unicode 字体和能够加载这些字体的 Unicode TeX 引擎。如果加载了 Unicode 字体(例如在 OpTeX 之后\fontfam),那么我们可以在 TeX 源中输入“,并在输出中得到“。

如果我们使用的键盘驱动程序不支持“那么我们可以通过以下方式定义它

\def\clqq{„}

然后\clqq在源文档中使用。

答案3

您可以采用 TeX 的普通渲染,''并使用 的负值将其向下推\raise,就像这样。(我怀疑我的和\hbox中的 es是必要的;我只是从和 中将它们拷贝过来。)\grqq\grq\glqq\glq

\def\glqq{\smash{\raise-1.3ex\hbox{''}}}
\def\grqq{\hbox{``}}
\def\glq{\smash{\raise-1.3ex\hbox{'}}}
\def\grq{\hbox{`}}

\hsize 3in
Don Quijote ist der \glqq{}\"uberspannte Leser\grqq, der die Welt,
wie sie seine B\"ucher schildern, f\"ur wirklich h\"alt.
\end

上述源代码的渲染图

相关内容