TIPAUNI 无法正确打印变音符号

TIPAUNI 无法正确打印变音符号

我已经就另一个问题提出了问题(请参阅这里),有人建议使用tipauni而不是tipa。多亏了这个建议,我最初的问题(IPA 符号的字体)已经解决了。但是,现在许多变音符号打印不正确(例如,打印在字母下方而不是上方,如下例中,长音符或卡龙符号打印在字母上方)。我自己定义的另外两个符号(其中一个\uhalb在 MWE 中)不再打印。有人知道是什么原因导致了这个问题吗?

这是 MWE

\documentclass[twoside, fontsize=10.2pt, listof=nochaptergap]{scrbook}

%======================================
% === Papierformat ===
\usepackage[paperwidth=17cm, paperheight=24cm, %seitengrösse
outer=2.7cm, inner=2.4cm, top=2.5cm,bottom=2.5cm, %seitenränder
headsep=0.62cm]{geometry} %abstand von kopfzeile zu text
\setlength{\textheight}{19cm} \setlength{\textwidth}{11.9cm} %satzspiegel definieren

% === Schriftart ===
\usepackage{fontspec}
\setmainfont{Times New Roman}

% === Einzüge ===
\setlength\parindent{6mm}

%======================================
% === language packages ===
\usepackage[ngerman]{babel}

%======================================
% === testing ===
\usepackage{showframe}
\usepackage{blindtext}

%======================================
% === Querverweise ===
\usepackage{hyperref} % muss vor leipzig geladen werden
\hypersetup{colorlinks=false, linkcolor=black,unicode=true,
 citecolor=blue, filecolor=blue, urlcolor=blue, pdfauthor=Hasse, pdfkeywords=}
\urlstyle{same}

%======================================
% === Glossar ===
\usepackage[nomain,style=long,nonumberlist,toc,xindy,nopostdot,sort=def,acronym]{glossaries}% package for creating a glossary and package for leipzig glosses (nomain, weil es in einem separaten file ist)
\usepackage{glossary-mcols} %dann wird glossar in zwei spalten gedruckt

% # \input{glossary.tex}

\usepackage[block]{leipzig}

\makeglossaries

\renewcommand{\leipzigname}{Glossierung}%die Leipzigliste umbenennen

%%customised glossings
\renewleipzig{abl}{abl}{Ablativ}
\renewleipzig{acc}{acc}{Akkusativ}
% some more customised glossings

%======================================
% === linguistic examples ===
%
\usepackage{microtype,booktabs}
\usepackage{langsci-gb4e} %https://ctan.math.illinois.edu/macros/xetex/latex/langsci/documentation/langsci-gb4.pdf

\renewcommand{\eachwordone}{\itshape} %italics in first line

%======================================
% === linguistic specific packages ===
\usepackage[english]{varioref}
\usepackage[T2A,T1,T3]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[documentfont=Times New Roman]{tipauni}

% === new tipa symbols ===
\newcommand\uhalb{\ipabar{u}{.7ex}{.5}{}{.5}}
\newcommand\aganz{\ipabar{a}{.5ex}{0.8}{}{}}

%======================================
%======================================
%======================================
\begin{document}
\setcounter{page}{5}

\blindtext

\textipa{an @ \v{s}tei, \i n @ m\={u}r}

\blindtext

\end{document}

答案1

如果您只是想划掉一个字符,那么您实际上并不需要所有复杂的功能\ipabar

在 Unicode 中已经有 U+0289 拉丁小写字母 U BAR,因此您可能需要使用它。

\documentclass{article}

\usepackage{fontspec}
\usepackage[documentfont=Times New Roman]{tipauni}

% === new tipa symbols ===
\makeatletter
\DeclareRobustCommand{\myipabar}[2]{% #1 = letter, #2 = height
  \makebox[0pt][l]{%
    \sbox\z@{\string#1}%
    \vrule width \wd\z@
           height \dimexpr#2\ht\z@+0.05ex\relax
           depth -\dimexpr#2\ht\[email protected]\relax
  }#1%
}
\makeatother

\DeclareRobustCommand\uhalb{\myipabar{u}{.7}}
\DeclareRobustCommand\aganz{\myipabar{a}{.5}}

\begin{document}

\textipa{an @ \v{s}tei, \i n @ m\={u}r}

\textipa{\uhalb \aganz}

\textipa{ʉ}

\end{document}

如果需要删除斜体字符,则会稍微复杂一些。

在此处输入图片描述

相关内容