XeLaTeX 中使用 TIPA 的倾斜字体

XeLaTeX 中使用 TIPA 的倾斜字体

我正在写一篇语言学论文,主要依赖tipa语音标音。有时标音是直立的,有时是倾斜的。这在 pdfLatex 中没有问题。

但是,我想探索更改普通文本和 IPA 字体的可能性,因此我尝试切换到 XeLaTeX,但无法使倾斜的语音文本正常工作。

这在 pdfLaTeX 中效果很好,但倾斜的文本在 XeLaTeX 中不起作用,而是fontspec直立显示:

\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{tipa}

\begin{document}

This is a text with a \textipa{[f@"nERIk]} transcription and 
\textipa{\textsl{slænt@d}} text for in-text use. I also use \textsc{small 
caps} a lot. 

\end{document}

在此处输入图片描述

如果我将字体切换为 Times,使用\usepackage{times}不带的字体fontspec,它也可以正常工作。但是,一旦我添加fontspec倾斜的文本,它就会直立显示。以下是一个例子:

\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{tipa}
\DeclareFontSubstitution{T3}{ptm}{m}{n}
\usepackage{fontspec}

\setmainfont[BoldFont={Minion Pro Bold.ttf}, ItalicFont={Minion Pro Italic.ttf} 
{Minion Pro Regular.ttf}

\begin{document}

\huge This is a text with a \textipa{[f@"nERIk]} transcription and 
\textipa{\textsl{slænt@d}} text for in-text use. I also use \textsc{small caps} 
a lot. 

\end{document}

在此处输入图片描述

\DeclareFontSubstitution{T3}{ptm}{m}{sl}也尝试添加,但它使tipa环境中的所有东西都倾斜了,而不仅仅是里面的东西\textsl{}。如果不行,我就用times,但我想看看是否可行。

如果有人对于与 Minion Pro 一起使用 IPA 的字体有更好的建议,也欢迎提出建议。

答案1

您可以使用LuaLaTeX.编译您的文件fontspecLuaLaTeX承认unicode字符,这使得输入语音转录变得更简单,并且如果我可以补充的话,在编写代码时更清晰可读。

为了排版这些语音符号,你使用的字体必须在其映射中包含这些字符,因此我建议你使用Doulos SIL,这是一种专门为处理不同语言的各种符号而设计的字体(你可以点击此处免费下载)。它也是一种衬线字体,可以与您想要使用的 Minion Pro 结合使用。

Doulos SIL字体没有自然的倾斜或斜体形状,但您可以用它来伪造它fontspec

这是您需要的针对您的文档的解决方案:

\documentclass{article}

\usepackage{fontspec}

%\setmainfont[BoldFont={Minion Pro Bold.ttf}, ItalicFont={Minion Pro Italic.ttf} 
%{Minion Pro Regular.ttf}

\setmainfont{MinionPro}[
    Extension = .otf,
    UprightFont = *-Regular,
    BoldFont = *-Bold,
    ItalicFont = *-It,
    BoldItalicFont = *-BoldIt
    ]

\newfontfamily\ipafont{Doulos SIL}[
    SlantedFont={Doulos SIL},
    SlantedFeatures={FakeSlant=0.15}
    ]
\newcommand{\ipa}[1]{{\ipafont #1}}

\begin{document}

\huge This is a text with a [\ipa{fəˈnɛɾɪk}] transcription and \textsl{\ipa{slæntəd}} text for in-text use. I also use \textsc{small caps} a lot. \textsl{slanted}

\end{document}

文字编译

您可能会注意到文本是用 Minion Pro 排版的,但音标使用了 Doulos SIL 字体。

如果你找不到所需的所有 IPA 符号,你可能需要访问此网站输入单词和符号,然后复制并粘贴到文档中并进行编译。

我注释了您使用的字体,并用我的字体代替,但您可以随意取消注释您的字体并注释我的字体,以便在您的机器上正确编译。

答案2

您可以将想要使用的系列添加到\tipaencoding命令中:

\documentclass{article}
\usepackage[T1]{tipa}
\renewcommand\tipaencoding{\fontencoding{T3}\fontfamily{ptm}\selectfont}
\usepackage{fontspec}

\setmainfont{TeX Gyre Heros}

\begin{document}

\huge This is a text with a \textipa{[f@"nERIk]} transcription and
\textipa{\textsl{slænt@d}} text for in-text use. I also use \textsc{small caps}
a lot.

\end{document}

在此处输入图片描述

答案3

作为对 Levy 的精彩回答的补充,这里有一种“重用” Tipa 传统输入样式的方法。我还\ipa用 * 变体定义了用于倾斜类型的命令。

\documentclass{article}
\usepackage{fontspec}

\setmainfont{MinionPro}[
  Extension=.otf,
  Path=/Library/Fonts/,
  UprightFont=*-Regular,
  ItalicFont=*-It,
  BoldFont=*-Bold,
  BoldItalicFont=*-BoldIt,
  SlantedFont=*-Regular,
  SlantedFeatures={FakeSlant=0.25},
]
\newfontfamily\ipafont{Doulos SIL}[
    SlantedFont={Doulos SIL},
    SlantedFeatures={FakeSlant=0.15}
]


\ExplSyntaxOn
\NewDocumentCommand{\ipa}{sm}
 {
  \group_begin:
  \ipafont
  \IfBooleanTF{#1}
   { \textsl { \lundgren_ipa:n { #2 } } }
   { \lundgren_ipa:n { #2 } }
  \group_end:
 }

\cs_new_protected:Nn \lundgren_ipa:n
 {
  \tl_map_function:nN { #1 } \__lundgren_ipa_char:n
 }

\cs_new:Nn \__lundgren_ipa_char:n
 {
  \str_case:nnF { #1 }
   {
    {"}{ˈ}
    {@}{ə}
    {E}{ɛ}
    {R}{ɾ}
    {I}{ɪ}
    %...
   }
   {#1}
 }
\ExplSyntaxOff

\begin{document}

This is a text with a \ipa{[f@"nERIk]} transcription and 
\ipa*{slænt@d} text for in-text use. I also use \textsc{small caps} 
a lot. The transcription also works with direct input \ipa{[fəˈnɛɾɪk]}.

\end{document}

Minion Pro 的设置取决于字体在我的计算机上的存储方式,请根据您的机器使用适当的方式。

转换列表当然是不完整的,您可以在键入文档时填写新的对应关系。

在此处输入图片描述

相关内容