在文本中嵌入的 hbar 前添加空格

在文本中嵌入的 hbar 前添加空格

我正在用马耳他语编写文本,默认情况下不支持 UNICODE 字符 U+0127 ħ。为了绕过这个问题,我将 hbar 重新定义为直立,如下所述:https://tex.stackexchange.com/questions/527065/how-to-typeset-upright-ħ

\AtBeginDocument{\renewcommand*{\hbar}{{\mkern-1mu\mathchar'26\mkern-8mu\mathrm{h}}}} 

问题是 \hbar 和前一个字符之间的间距不够,如图所示。

在此处输入图片描述

在此处输入图片描述

在此处输入图片描述

有没有什么办法可以让我编辑 \hbar 的定义或者其他方式来引入正确的间距?

答案1

该字符采用 lualatex 或 xelatex 使用的默认拉丁现代字体,因此以 lualatex 为例

在此处输入图片描述

\documentclass{article}

\begin{document}

nagħmel

\end{document}

使用 pdftex,您可以定义字符以使用 tipa 包中的交叉 h 作为音标符号

在此处输入图片描述

\documentclass{article}
\usepackage{tipa}
\DeclareUnicodeCharacter{0127}{\textcrh}
\begin{document}

nagħmel

\end{document}

答案2

我建议您使用lualatex,在现代发行版中您只需执行以下操作:

\documentclass{article}
\usepackage{babel}
\babelprovide[import, main]{maltese}
\begin{document}
% text from https://en.wikipedia.org/wiki/Maltese_language
L-Unjoni hija bbażata fuq il-valuri tar-rispett għad-dinjità tal-bniedem,
il-libertà, id-demokrazija, l-ugwaljanza, l-istat tad-dritt u r-rispett
għad-drittijiet tal-bniedem, inklużi d-drittijiet ta' persuni li jagħmlu parti
minn minoranzi. Dawn il-valuri huma komuni għall-Istati Membri f'soċjetà fejn
jipprevalu l-pluraliżmu, in-non-diskriminazzjoni, it-tolleranza, il-ġustizzja,
is-solidarjetà u l-ugwaljanza bejn in-nisa u l-irġiel.
\end{document}

马耳他语文本渲染

相关内容