【问题标题】:How to convert/encode fonts into base 64 format?如何将字体转换/编码为 base 64 格式?
【发布时间】:2016-11-22 17:05:52
【问题描述】:

由于有几个与字体相关的问题,因此最好将其转换为 base 64 格式。有时像 fontsquirrel.com 等网站无法将您的字体转换为 base64 格式,显示字体被列入黑名单或其他问题。 那么在这种情况下如何将字体转换为 base64 格式(如果我们对字体没有此类法律问题)

【问题讨论】:

  • 任何网络搜索都会为您提供一百万个链接,让您了解如何对任意数据进行 base64 编码。另请注意,fontsquirrel 等将其列入黑名单是因为您正在尝试转换您绝对无权使用的知名许可字体,例如您“免费”获得的字体您的操作系统或 Adob​​e 产品 =)
  • 谢谢迈克。我需要在 base64 中转换的字体,我已经拥有使用它的许可,但由于这些网站没有该权利,所以不允许我在 base64 中转换它。除此之外,为什么我们可以使用自己的终端/命令行来使用这些站点。我已经找到了方法并发布了答案,希望它能帮助其他有需要的人。
  • 或者,您也可以只使用浏览器,与特定操作系统的终端相比,这是一种更通用的方法;所有现代浏览器都带有 FileReader 用于从文件中解析数据,atob() 用于将数据转换为 base64 二进制文件(以及btoa() 用于转换回来),因此您甚至不需要离开浏览器上下文。不过请注意:只要转换器站点不存储数据,就没有权利问题。我的首选是motobit.com/util/base64-decoder-encoder.asp

标签: fonts base64 woff eot


【解决方案1】:

我刚刚找到了一种使用命令提示符对 base64 格式的字体进行编码的解决方案。

  1. 打开命令提示符/终端
  2. 转到字体文件所在的文件夹。
  3. 输入以下命令

base64 name-of-thefont-file-name.woff

(我更喜欢使用 .woff,因为它适用于多种高级浏览器)

如果您在从命令提示符/终端复制它时遇到困难 - 您可以将输出重定向到文件

base64 name-of-thefont-file-name.woff > base64encoded.txt

如果只需要一行编码字体,请使用以下命令

base64 -w 0 name-of-thefont-file-name.woff > base64encoded.txt

现在在 css 文件中使用此编码代码,使用以下代码 sn-p -

@font-face { font-family: "字体名称"; src:url(data:font/woff;charset=utf-8;base64,font-file-in-encoded-form) 格式('woff'); 字体粗细:正常; 字体样式:正常; }

【讨论】:

    猜你喜欢
    • 2013-09-26
    • 1970-01-01
    • 2016-07-29
    • 2021-11-08
    • 2015-08-09
    • 2021-05-17
    • 1970-01-01
    • 1970-01-01
    • 2018-01-22
    相关资源
    最近更新 更多