创建 TeX 宏/代码来访问特定字体的符号的最简单方法是什么?

创建 TeX 宏/代码来访问特定字体的符号的最简单方法是什么?

我想使用卡西欧字体这里。 在此处输入图片描述

1 - 我想创建一种使用 LaTeX 来获取这些“图标”的方法。例如,使用\On使用按钮等。假设我们必须在这里做更多的工作来找到mapping这些图标...

2 - 如您所见,目标计算机(最终 PDF 版本)可能未安装字体。我知道我们可以将字体嵌入 PDF。也可以使用 latex 完成此操作吗?

在此处输入图片描述

3 - 我不介意使用正常方式.tex来实现这一点,或者创建一个package。但我在创建方面经验有限,所以quick-and-easy最好这样做。

答案1

你可以通过数字而不是“按字符”来调用字形。使用以下代码,我们可以收集字体中每个字形的编号:

\documentclass{article}
\usepackage[a4paper,margin=2cm,heightrounded]{geometry}
\usepackage{fontspec}
\usepackage{multicol}

\newfontface{\casio}{CASIO ClassWiz}[
  Extension=.ttf,
  Path=./ClassWizSeriesFontSet/,
]

\begin{document}

{\casio\xdef\casiofont{\the\font}}

\begin{multicols}{4}
\count255=32

\loop\ifnum\count255<"10FFFF
\advance\count255 1
  \iffontchar\casiofont\count255 \the\count255\ {\casio\char\count255}\endgraf\fi
\repeat

\end{multicols}

\end{document}

在此处输入图片描述

对于您的文档,您可以查找所需的字符并定义

\newfontface{\casio}{CASIO ClassWiz}[
  Extension=.ttf,
  Path=./ClassWizSeriesFontSet/,
]

(如果您在系统范围内安装字体,当然,您不需要这些选项;否则,请调整路径)。

接下来,将宏分配给您需要的字形:

\newcommand{\casiosymbol}[1]{{\normalfont\casio\symbol{#1}}
\newcommand{\CLeft}{\casiosymbol{33}}
\newcommand{\CEquiv}{\casiosymbol{34}}
\newcommand{\CFactorial}{\casiosymbol{37}}

您可以随时改进该列表。

答案2

这确实不难,但将其打包成包就更有意义了。

更新

我现在已将其打包为一个包含所有键的命令名称的包。它现在在加拿大运输安全局。由于我不使用计算器,因此欢迎对某些键的更合适名称提出建议。您可以在以下网址提交建议https://github.com/amunn/casiofont/

示例文档

这是示例文档。字体默认嵌入,因此任何查看者都应该能够查看生成的文件。

\documentclass{article}
\usepackage{casiofont}
\begin{document}
{\casio \Shift\Alpha\UpArrow\DownArrow\LeftArrow\RightArrow}

\textcasio{\UpArrow}
\end{document}

代码输出

相关内容