![在 xelatex 中切换一个字符的字体](https://linux22.com/image/409510/%E5%9C%A8%20xelatex%20%E4%B8%AD%E5%88%87%E6%8D%A2%E4%B8%80%E4%B8%AA%E5%AD%97%E7%AC%A6%E7%9A%84%E5%AD%97%E4%BD%93.png)
目前正在处理签名中带有马耳他十字字符 (U+2720) 的文本,而我为该文档使用的 EBGaramond 主字体未提供相应的字形。正如预期的那样,我在 xelatex 输出中最终得到了一个小正方形/矩形。
以下是我的文本编辑器中的内容:
… con el emblema de nuestra redención tu amigo—✠*Pedro Hillo*.
我想我需要暂时切换到具有 U+2720 字形的字体……显然不会引入额外的间距或换行符等。
我查看了该网站上的不同问题/答案,但没有找到解决方案。
使用 xelatex 可以实现这一点吗?如果可以,什么字体可以为马耳他十字提供好看的字形,最好是与 EBGaramond 的外观大致匹配的字体?
或者 xelatex 中是否有某种东西可以模拟 fontconfig 机制(在 linux 上),自动从兼容字体中提取缺失的字形?
谢谢。
答案1
定义合适的字体并映射字符以使用它。
\documentclass{article}
\usepackage{fontspec}
\usepackage{newunicodechar}
\setmainfont{EB Garamond}
\newfontface{\maltesecross}{TeX Gyre Pagella} % or whatever
\newunicodechar{✠}{{\maltesecross✠}}
\begin{document}
con el emblema de nuestra redención tu amigo—✠\emph{Pedro Hillo}.
\end{document}
答案2
在我的序言中添加了以下内容:
\newfontfamily{\myfont}{TeXGyrePagella}
并将文档正文改为
… con el emblema de nuestra redención tu amigo—\myfont{✠}\textit{Pedro Hillo.}
我必须将马耳他十字“花括号化”,以避免使用 TeX Gyre Patella 处理文档的其余部分。
感谢您的帮助。
无国界记者组织