在 扑克牌 (Unicode 块)我发现
Chrome 浏览器说这应该是字体 TwemojiMozilla.ttf
。
我可以在我的 TeXLive 中找到此字体,c:/texlive/2022/texmf-dist/fonts/truetype/public/twemoji-colr/
也可以在 CTAN 上找到该字体:https://ctan.org/texarchive/fonts/twemoji-colr
为什么下面的代码不起作用?
我如何获得它彩色字形?
% TeX Program = lualatex
% alternativ:
% arara: lualatex
\documentclass{article}
\usepackage{fontspec}
\newfontfamily\myfontA{TwemojiMozilla.ttf}[
Path="c:/texlive/2022/texmf-dist/fonts/truetype/public/twemoji-colr/"
]
\newfontfamily\myfontB{TwemojiMozilla.ttf}
\begin{document}
\section{With Path}
{\myfontA\char"1F0CF ABCDEFG}
\section{Without Path}
{\myfontB\char"1F0CF ABCDEFG}
\end{document}
答案1
由于字体包含在 TeXLive 中,因此您应该能够在没有路径的情况下加载它。但正如解释的那样在 Overleaf,您可能想尝试 Harfbuzz 渲染器(带有 LuaLaTeX)。请注意,该字体不包含拉丁字母的字符。
\documentclass{article}
\usepackage{fontspec}
\newfontfamily\myfontA[Renderer=HarfBuzz]{TwemojiMozilla.ttf}
\begin{document}
{\myfontA\char"1F0CF} ABCDEFG
\bigskip
{\Huge\myfontA\char"1F0CF}
\end{document}
但要注意,上面的链接也很好地解释了彩色字体有不同的方法,两种是基于矢量的(一种使用 SVG [实际上是 SVG␣,带有尾随空格] 表,一种使用 COLR/CPAL 表),两种是基于光栅的(一种使用 CBDT/CBLC 表,一种使用 sbix 表)。
如何访问这些字体中的字形取决于使用的技术。使用 Harfbuzz 渲染器,您至少应该能够使用利用 COLR/CPAL 和 CBDT/CBLC 表的字体。
对于 SVG 字体,请替换Renderer=Harfbuzz
为RawFeature={+svg}
。
我目前不确定如何使用利用 sbix 表的字体,因为存储在那里的数据可能有各种格式,但据我所知Harfbuzz 支持 PNG 数据。