如何用斜体书写一串包含扁平符号的文本?
\textit{This is a ♭B}
当我执行上述操作时,我在平面应该在的位置得到了一个 X。
答案1
问题是 TeX 找不到该字符,因此nodef
会打印一个称为 a 的字形。在你的情况下是 X。有些字体会给你一个问号或一个空白豆腐。这意味着你指定的字体中缺少该字符。
找到答案的方法之一是使用 Unicode 中的 Last Resort 字体
https://github.com/unicode-org/last-resort-font/releases/tag/14.000
看看在哪个块中可以找到字形。通常你可以找到NotoSans...
支持此范围的字体。
\documentclass{article}
\usepackage{fontspec}
\newfontfamily\lastresort{LastResort}
\begin{document}
\lastresort
\Huge
\textit{This is a ♭B}
\end{document}
从图片中可以看出(我只截取了文本的末尾),这是在杂项符号范围内U+2600-36FF
。NotSansSymbols
字体有字形。也可以在\directlua
命令中使用 Lua 来获取字形编号或在线实用程序。这LastResort
更有趣一些。感谢 Everson 先生提供字体。
答案2
这应该对你有用!
\def\flatit{\setbox0=\hbox{$\flat$}
\pdfliteral{q 1 0 .3 1 0 0 cm}\rlap{$\flat$}\pdfliteral{Q}\kern\wd0 }
\textit{This is a $\flatit$B}