字母 'ę' e_ogonek 和 'ą' a_ogonek 显示不正确。例如:
\documentclass[A4paper,12pt]{article}
\usepackage{polski}
\usepackage[lf]{berenis}
\usepackage[LY1]{fontenc}
\usepackage[utf8]{inputenc}
\begin{document}
\section{Kopią i~trzęsą}
Myszy kopią i~trzęsą Warszaw\k{a}.
\end{document}
我正在使用 TexLive 2013 和 berenis.sty 2010/08/26 v1.0。是字体还是编码问题?
答案1
LY1 编码不适用于波兰语,因为它不包含带有 ogonek 的字母的独立字形,因此必须构造它们。因此,没有单词会在带有 ogonek 的字母后面连字符。
如果您仍然坚持使用仅在 LY1 编码中可用的字体,请添加一些更正,因为该构造实际上仅适用于Ą
。
\documentclass[a4paper,12pt]{article}
\usepackage[LY1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{polski}
\usepackage[lf]{berenis}
\DeclareTextCompositeCommand{\k}{LY1}{a}
{\oalign{a\crcr\noalign{\kern-.27ex}\hidewidth\char7}}
\DeclareTextCompositeCommand{\k}{LY1}{e}
{\oalign{e\crcr\noalign{\kern-.27ex}\hidewidth\char7\hidewidth}}
\DeclareTextCompositeCommand{\k}{LY1}{E}
{\oalign{E\crcr\hidewidth\char7\hidewidth}}
\begin{document}
\section{Kopią i~trzęsą}
Myszy kopią i~trzęsą Warszaw\k{a}.
\k{a}\k{e}\k{A}\k{E}
ąęĄĘ
\end{document}
如您所见,以 Unicode 形式还是使用语法输入字母都没有关系\k
。
重音符号的补充
LY1 中只有 ó 和 Ó,而 期ƌŹ 的外观并不好看。下面介绍如何进行补充。重音符号的水平对齐可以稍微调整一下。构造的字符高度尽可能接近已经存在的 ó 和 Ó 字形的高度。
\documentclass[a4paper,12pt]{article}
\usepackage[LY1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{polski}
\usepackage[lf]{berenis}
\DeclareTextCompositeCommand{\k}{LY1}{a}
{\oalign{a\crcr\noalign{\kern-.27ex}\hidewidth\char7}}
\DeclareTextCompositeCommand{\k}{LY1}{e}
{\oalign{e\crcr\noalign{\kern-.27ex}\hidewidth\char7\hidewidth}}
\DeclareTextCompositeCommand{\k}{LY1}{E}
{\oalign{E\crcr\hidewidth\char7\hidewidth}}
\DeclareTextCompositeCommand{\'}{LY1}{c}
{{\ooalign{\hidewidth\raise-.13875ex\hbox{\'{}}\hidewidth\crcr c}}}
\DeclareTextCompositeCommand{\'}{LY1}{s}
{{\ooalign{\hidewidth\raise-.13875ex\hbox{\'{}}\hidewidth\crcr s}}}
\DeclareTextCompositeCommand{\'}{LY1}{z}
{{\ooalign{\hidewidth\raise-.13875ex\hbox{\'{}}\hidewidth\crcr z}}}
\DeclareTextCompositeCommand{\'}{LY1}{C}
{{\ooalign{\hidewidth\raise.65367ex\hbox{\'{}}\hidewidth\crcr C}}}
\DeclareTextCompositeCommand{\'}{LY1}{S}
{{\ooalign{\hidewidth\raise.65367ex\hbox{\'{}}\hidewidth\crcr S}}}
\DeclareTextCompositeCommand{\'}{LY1}{Z}
{{\ooalign{\hidewidth\raise.65367ex\hbox{\'{}}\hidewidth\crcr Z}}}
\begin{document}
\section{Kopią i~trzęsą}
Myszy kopią i~trzęsą Warszaw\k{a}.
\k{a}\k{e}\k{A}\k{E}
ąęĄĘ
ćóśźĆÓŚŹ
\end{document}
答案2
请参见将 LY1 编码重新编码为 T1(berenis 字体和波兰字母)。
简而言之:新软件包提供 T1/TS1 支持作为非默认选项。您只需在加载软件包时传递正确的选项即可。(这保持了向后兼容性。)如果有人可以检查它是否支持 Polish OK 或让我知道有哪些错误,我将不胜感激,因为我真的不知道应该如何检查。
威尔士语应使用 enc 的默认设置进行排版。lig 不再需要。我不知道这是否会影响其他语言,但此特定包的 LY1 编码比 T1 更好地支持威尔士语。想要 fj 和 ffj 连字符的用户也需要使用默认 (LY1) 编码。
改编egreg的代码:
\documentclass[a4paper,12pt]{article}
\usepackage[utf8]{inputenc}
\usepackage{polski}
\usepackage[lf,enc=t1]{berenis}
\begin{document}
\section{Kopią i~trzęsą}
Myszy kopią i~trzęsą Warszaw\k{a}.
\k{a}\k{e}\k{A}\k{E}
ąęĄĘ
ćóśźĆÓŚŹ
\end{document}