动态生成字体的单个字形大小操作

动态生成字体的单个字形大小操作

问题描述:

字体中的单个字形大小操作是否有任何简单的方法?换句话说,我想根据指定的公式动态生成字体,该字体对于字体中的各个字形具有不同的大小(或大小外观)。例如,“A”可能看起来像原始尺寸的150%,而“B”可能具有其原始尺寸的50%。动态生成字体的单个字形大小操作

生成的字体将在网页上使用。这将允许我即使对相同的字体大小也影响字符大小,并且不需要额外的单个字母的CSS样式。 (CSS样式单个字母将是性能/解析器矫枉过正的网页有很多文字)。

我不确定此字形大小转换是否可能以某种简单的方式或是否需要编写单个字形为每个受影响的字形轮廓转换公式。

为每个字形写轮廓转换公式(基于各个字形轮廓)可能与字体有关,并且在我的用例中不值得。

字体可以生成/操作一次(JS/Java/Python库或方法首选),然后字体应该可以在网页上使用。

您有什么想法吗?先谢谢你。

我不明白你为什么要做到这一点,这听起来丑陋,但在这里你去:

FontForge(一个免费的工具),可以扩展各个字形。您可以打开该文件,选择要缩放的字形,然后按Ctrl-Backslash(或从菜单中选取“元素”>“转换”>“转换”)。起源应该是“雕文起源”;选择“比例”并设置你的比例;将其他两个下拉菜单设置为“无所事事”。 如果可以,请选中“变换宽度太大”。

似乎有一个错误意味着“变换宽度太远”选项有时被禁用。如果是这样,则在完成转换后,您需要手动调整“高级”宽度(“度量”>“设置宽度”>“缩放宽度依据”,然后输入相同的百分比值)。

如果你在linux上运行FontForge,你甚至可以做python脚本编写,如果你想以编程的方式做到这一点。因为你说这是一个一次性的过程,所以按照我所描述的手动操作可能会更容易。

从设计师的角度来看,偶尔会有不同尺寸的文本混合在一起的原因,但在这些情况下,需要考虑使笔触宽度也一起工作。大文本应该更轻/更薄,小文本更大胆。这与人们对using true small caps rather than just reducing the text size的说法是一致的。查看FontForge功能元素>样式>更改权重。