将自定义符号/徽标作为字体字符添加到 XeteX/Latex

将自定义符号/徽标作为字体字符添加到 XeteX/Latex

假设你有一个标志或象形图,你想在 XeTeX/LateX 中使用它作为字体,就像字体真棒该软件包提供了类似 twitter、github 等的功能。该如何处理呢?

答案1

为了获得尚不存在的象征作为徽标或类似物品中的 LaTex 字符,请按照以下步骤操作:

免责声明:这不是一种科学方法,也不是软件工程中的方法。如果你愿意,你可以把它当作一种生活小窍门。

使用的系统(YMMV):

  • Windows 7.1 x64
  • 乳胶漆
  • MikTex 2.9
  • fontspec 包

步骤1

使用您选择的工具创建所需符号的 .svg 文件。[InkScape][1] 是一款出色的 [FOSS][2] 程序。此外,VectorMagic 是一款非常好的套件,几乎可以 100% 自动化矢量化和跟踪。

记得将其保存为 SVG 1.1。对于本演练,不需要进一步的限制。

第2步

完成这些操作后,你可以使用网络上的许多“字体生成器”。我尝试过其中的一些([fontello][3]、[icomoon][4]、[fontastic][5]),但只有 fontastic 可以生成正确的我可以安装的 .ttf 文件实际上包含我制作的符号。

使用 fontastic 你需要

  • 登记
  • 登录

登录后,点击顶部导航栏中的 [添加更多图标][6]。现在您可以点击导入按钮并选择要上传的 .svg 文件。

之后,您需要返回“主页”,然后单击“选择”。在这里,您应该单击刚刚上传的图标 - 它已被“字体化”。太棒了!

选择您可能想要的即将生成的字体中的所有其他图标,或者重复此步骤,直到所有图标都已字体化。

步骤3

现在点击中间导航栏中的“自定义”。

现在你可以做两件事:

  1. 改变css 类映射你稍后会用到的图标(主要针对 Web 开发人员和 Web 设计人员)
  2. 改变字符映射您需要它才能在 XeteX 中工作

例如,如果您想要的徽标映射到大写字母 M,那么在 LateX 中选择字体后输入 M 将会导致您的图标出现!

根据您的需要调整映射后,继续“发布”。

在这里您需要下载字体并在您的系统上手动安装它。

步骤4

下载字体后,你可以安装它(在 Windows 上),方法是打开 zip,导航到其中包含的“字体”文件,然后双击该文件.ttf扩展名。如果您在系统中看不到扩展名,请激活文件扩展名以显示它,或者查找带有小写字母“A”的文件图标。

字体预览窗口打开后,您可以在其中检查字体是否按预期显示。单击“安装”按钮将此字体安装到您的系统上以供在任何地方使用。

步骤5

为了在 tex 文档中使用字体,你可以添加类文件你的.tex将基于此。只需确保在与 .tex 相同的目录中创建 classfile.cls。

下面是我的文档类“文章”的类文件示例:

\ProvidesClass{friggeri-cv}[2012/04/30 CV class]
\NeedsTeXFormat{LaTeX2e}

\DeclareOption{print}{\def\@cv@print{}}
\DeclareOption*{%
  \PassOptionsToClass{\CurrentOption}{article}%
}
\ProcessOptions\relax
\LoadClass{article}

%%%%%%%%%
% Fonts %
%%%%%%%%%

\RequirePackage[quiet]{fontspec}
\newfontfamily\customfont[]{generated-font-2}

最后两行创建了一个新命令供您在 tex 文件中使用:\customfont{}

第 6 步

最后,你需要将类文件添加到你的 tex 文件的头部,方法是:

\documentclass[]{yourclassfile}

一开始就是这样。现在就可以开始了!您可以使用 {\customfont } 来获得正确大小的符号,并像字体字符一样对其进行操作!

我欢迎所有能改进这篇文章的反馈 - 请随意评论。

相关内容