- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
为了获取字形宽度,我将 TTF
字体转换为 AFM
,然后解析 AFM
文件的内容以获取每个字形的宽度。
从技术上讲,fontforge
正在从二进制TTF
文件中捕获字形宽度,然后基于AFM
标准模板创建AFM
字体文件。我想知道是否可以通过 fontforge 命令直接将 TTF
文件转换为字形宽度列表?!?
最佳答案
FontForge 包含两个解释器,因此您可以编写脚本来修改字体。其中一种解释器是 Python(首选),一种是遗留语言。 Fontforge 嵌入了 Python,但也可以将 Fontforge 构建为 Python 扩展。
那么您将使用什么:Python 还是传统语言?什么界面:命令行或GUI或Python扩展?
脚本可以位于文件中,也可以只是作为参数呈现的字符串。您可能需要通过 -lang 参数指定要使用的解释器。请参阅Command Line Arguments .
$ fontforge -script scriptfile.pe {arguments}
$ fontforge -c "script-string" {arguments}
$ fontforge -lang={ff|py} -c "script-string"
扫描 documentation 后我写了我的 scriptfile.pe:
Open($1, 1)
Select($2)
Print( GlyphInfo('Width') )
比:
$ fontforge -script scriptfile.pe YourFont.ttf A
... # Some output truncated.
1298
打开字体。然后选择:"file">“执行脚本...”。输入:
Select('A')
Error(ToString(GlyphInfo('Width')))
点击“确定”。
首先是单个字形的宽度( docs ):
>>> import fontforge
>>> f = fontforge.open("YourFont.ttf")
>>> f['A'].width
1298
这是您问题的答案。对于每个字形,编码索引、名称和宽度:
>>> for i in f.selection.all():
... try:
... name, width = f[i].glyphname, f[i].width
... print i, name, width
... except:
... pass
...
0 uni0009 0
2 uni0002 0
13 nonmarkingreturn 510
# ... Truncated ...
65707 germandbls.smcp 2266
>>>
注意:我使用了 try/except 因为 f.selection.all()
也确实选择了非字形。访问不存在的字形将引发错误。
关于fonts - 通过 fontforge 脚本获取字形宽度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20955954/
这是我第一次使用字形,但我知道它们是文本,并且可以像任何其他文本一样设置样式。这就是我对为什么我的字形图标没有改变颜色感到困惑的原因。 我希望它将颜色从黑色(默认)更改为白色。这是我的代码: HTML
JavaScript/CSS/web 中有没有办法检测系统是否具有某个 Unicode 字符的有效字形? 例如,我想检测语言中的某个字符是否显示为方形框,因为用户没有显示这些 Unicode 点的字体
在编写继承自 TBitBtn 的自定义控件时,我正在寻找一种方法来覆盖或拦截仅绘制字形并自己绘制字形,而不必重绘整个控件。我广泛使用 VCL 样式,并希望避免重新创建所有绘图和样式 Hook 等。不幸
我正在使用tileserver-gl的Docker镜像来运行服务器(klokantech/tileserver-gl)。 我想像自己的Font Awesome(currently here avail
正如标题所说。我理解,使用复合字符和影响其他字符和连字的字符正确呈现所有 unicode 格式确实很困难。我们的字体似乎是为最大程度的 Unicode 符号支持而设计的(Symbola、Code200
我想将 Unicode 字形渲染为 jpg 格式。我应该更改 java 代码中每个 Unicode block 的字体吗?我试着不那样做,但没有用。但是,为每个 block 更改字体需要花费大量时间。
我有一个可以使用 Facebook 帐户登录的网站,我现在遇到的唯一问题是我无法在按钮中的文本前面从 Facebook 获取字形。在这里你可以看到代码。我也在用 Bootstrap, ';" clas
Twitter Bootstrap 使用字体文件中的图标。如果图标显示在偏离像素的元素中(例如,通过将父级设置为百分比宽度,如 51% 并将图标向右浮动),则图标会变得模糊。 这里是手动设置位置为40
我试图根据 StatusLineId 更改我的字形图标,但没有出现任何字形图标。我做错了什么? HTML 代码: Js函数 function statusIc
我有一个包含许多图标的 SVG 文件: Generated by Fontastic.me 这是我如何链接到 CSS: @font-face { font-family: "m
我在浏览器控制台中收到错误:: glyphicons-halflings-regular.woff2:1 Failed to load resource: the server responded w
几个小时以来,我一直在与 š 的字体样式作斗争。 我正在使用来自 google webfonts 的 webfont“open sans”并测试了 googles review 选项上的字素。一切都很
我需要使用一个看起来像挂锁的 unicode 字符。它用于表单下方的按钮,上面写着“CopyLink __”,上面有一个挂锁,表示当他们复制他们所在页面的链接时,将不会访问“copylink _”版本
你好,我是第一次尝试使用 bootstrap 字形图标,但它没有按我想要的方式工作。 我想要左右图标,所以我选择了 glyphicon-chevron-left 和 glyphicon-chevron
我正在开发一款教授日语的应用程序。问题是,系统使用的默认字体是使用字符的中文变体,而不是日文变体。例如,汉在中文字体中看起来与在日文字体中略有不同,即使它们是相同的 Unicode 代码点。如何指定我
我目前正在实现一个简单的 SVG 文本渲染器。我正在从 SVG 文件中提取我需要绘制的字符的路径信息。 这是存储在 JSON 对象中的字体/字符的所有适当信息: window.font =
当我将鼠标悬停在链接上时,我试图在链接的右侧显示 Bootstrap 字形图标。 我试过同时使用 CSS 和 JS,但它就是行不通。所以我需要一些帮助:) 这就是我想要做的:When i hoover
下面有ajax代码 $.ajax({ type: "POST", url: "shoppingcart_service.asmx/RegisterSub
我正在努力理解这些东西,以便我可以有效地在工作中实现项目的国际化。我刚刚开始,非常想从您的专业知识中了解我是否正确理解了这些概念。到目前为止,这是我从网上收集的内容的简化版本(据我所知): 字符编码
有什么方法可以更改 Eclipse 用于表示空白字符的符号吗?例如,我想将换行符“¶”自定义为更像 Notepad++ 样式“LF”。 我知道如何打开和关闭它们以及更改字体、透明度等。但我还没有找到任
我是一名优秀的程序员,十分优秀!