linux - 检查字体是否等宽

标签 linux bash fonts truetype fontconfig

我正在 Linux 中创建一个小的 (bash) 脚本来转换等宽字体,并且我想在提供的字体不是等宽字体时返回错误。

我一直在查看 fontconfig fc-query 命令,它有 spacing 属性,但很多时候这个属性没有设置(或者我没有设置不知道如何检索它)。有没有更好的方法来检查字体是否等宽?

我目前支持的字体是TrueType(.ttf)和X11类型(.pcf.gz,.pfb)字体。

最佳答案

在我的脑海中:

# script.py

import sys
import fontforge
f = fontforge.open(sys.argv[1])
i = f['i']
m = f['m']

if i.width == m.width:
    print('Monospace!')

使用 sys 模块,您可以传递命令行参数:

$ python script.py path/to/font.ttf

关于linux - 检查字体是否等宽,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34511603/

相关文章:

linux - 为什么我的测量显示进程消耗的 CPU 时间比可用时间多?

c - 调用两次时从串口读取失败

java - 不能 ssh 吗?可能是我 Mac 上 bash_profile 的问题

fonts - 为什么我得到 JRRuntimeException : couldn't load the following font, Helvetica?

android - 在缩放的 Canvas 上测量文本

linux - 比较unix中的两个文件并将增量添加到一个文件中

c - getline() 函数行为异常

bash - 如何使用与号 '&' 命令在多个目录中多次执行此 find 命令?

mysql - 将 schema.sql 注入(inject) mysql 数据库的 bash 脚本命令

html - 在 Web 浏览器上使用 .otf 字体