问题标签 [fontforge]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1105 浏览

python - 通过 FontForge Python 绑定更改字体的 em 大小

我有一个小的 Python 脚本可以通过 FontForge 更改字体:

关键点是

(在进一步处理之前,我需要规范化几种字体的 em 大小。)

当我通过 GUI 在 FontForge 中执行此操作时,字体转换得很好:打开,将em大小设置为1000(此步骤通常需要 FontForge 一些时间),导出为 SVG。生成的字体与预期的一样。

但是,通过上面的脚本执行此操作会导致结果混淆,一些字形没有缩放,一些有替换的重音等等。

脚本可能有什么问题?有什么办法可以让 FontForgeem在导出之前正确缩放字体大小?

0 投票
1 回答
5496 浏览

python - 如何在 Windows 7 中将 fontforge 导入 python

环境:Win 7、Python 3.4、Sublime Text 2

我正在尝试通过在 *.py 中导入 fontforge 来使用 fontforge,如下例所示

但是,对于 win 7,我没有找到任何关于在我的项目中包含 fontforge 二进制文件以使其工作的位置(或哪个子集)的帮助。请问有什么想法吗?谢谢

编辑:我试图在 win 7 中使用 pyextension 构建它,如下所述:

http://fontforge.org/source-build.html#MS

通过 cygwin 执行 ./configure --enable-pyextension 失败

编辑 2:通过安装 C 编译器,我已经设法 ./configure 它,但我的尝试在执行 make install 命令时失败了。我收到以下错误,前面还有无数行:

0 投票
3 回答
36756 浏览

fonts - 如何使用 Fontforge 将 TTF 转换为 FNT

我有一个 TTF 字体,需要在 FNT 中转换(理想情况下也是在 pcf 中)。我尝试了 Fontforge,但是当我加载字体并选择生成字体时 - 无法从右侧的列表中选择任何内容,除了“无位图字体”虽然有 WIN FNT。谁能帮我这个?

0 投票
1 回答
560 浏览

python - fontforge EnvironmentError:无法加载图像文件

我正在尝试从单个 SVG 文件创建字体。这里的示例:

任何加载单个 SVG 文件的尝试都会导致相同的错误:

我哪里错了?


环境:

档案权

ls -la /home/user/guitar.svg -rwxrwxrwx 1 user user 3728 Jun 30 20:46 guitar.svg

操作系统

$ uname -a Linux servername 2.6.32-431.11.2.el6.i686 #1 SMP Tue Mar 25 17:17:46 UTC 2014 i686 i686 i386 GNU/Linux

$ cat /etc/centos-release CentOS release 6.5 (Final)

蟒蛇版本

$ python --version Python 2.7.7

字体版本

$ fontforge --version Copyright (c) 2000-2012 by George Williams. Executable based on sources from 14:57 GMT 31-Jul-2012-TtfDb. Library based on sources from 14:57 GMT 31-Jul-2012. fontforge 20120731 libfontforge 11524617


PS 同样的测试在 Ubuntu 12.04 上是可以的,但是 fontforge 是其他版本

$ fontforge --version Copyright (c) 2000-2011 by George Williams. Executable based on sources from 13:48 GMT 22-Feb-2011-ML. Library based on sources from 13:48 GMT 22-Feb-2011. fontforge 20110222 libfontforge 20110222-ML

0 投票
1 回答
693 浏览

node.js - 使用 Nodejs 上传:使用 response.end 发送的文件错误

我正在尝试上传一个文件并使用 fontforge 将其转换,以将其发送回用户,所有这些都非常强大。我的代码在我的第一台机器上运行,但随后我创建了一个带有 Vagrant 的 Ubuntu-Server VM,在其上使用 SSH,DLed fontforge,强大(基本上是 nodejs),然后重试。这就是我的server.js文件的样子:

表单在客户端上正确显示(一些带有 post 方法的基本 index.html 页面),但给我发回了一个 31 字节的文件(而不是 6.1k),具有正确的名称和扩展名,但绝对不是正确的内容。

控制台日志显示:

0 投票
1 回答
345 浏览

fontforge - 从另一个目录调用时脚本不起作用

不太确定如何正确表达,但如果我在它所处理的文件目录中运行我的脚本,一切都很好。如果我将脚本指向另一个目录中的文件,它将失败。我确定这是某种路径扩展之类的,但我似乎无法让它发挥作用。

这是 fontforge 脚本。

以及失败的命令:

和错误:

例如,如果我将 $1 放在引号或 fname 中,则错误会发生变化,但如果我从工作目录中调用它,则脚本可以完美运行。

我知道我遗漏了一些明显的东西,但我就是想不通。谢谢你的帮助。

0 投票
0 回答
248 浏览

python - FontForge Python appendSFNTName 问题

我是一个 Python 初学者,我正在尝试创建一个小的 Python 脚本,它使用 FontForge Python 绑定重命名 FontFiles SFNT 属性(Family、SubFamily、FullName)。

该脚本侦听raw_input,然后准备字符串,并使用 FontForge 方法应用更改。

但是我遇到了一个很奇怪的问题,当在方法参数中传递 a variable(type str) 而不是直接 a'string'时,没有应用更改,而仅适用于 SFNT 属性之一。

我知道 FontForge 从 SFNT 表创建一个元组。FontForge 提供了一种更改元组的方法font.appendSFNTName(language,strid,string)

例如,更改适用于SubFamily,但不适用于Family

在检查是否是 unicode 的问题后,它也无济于事。

遗憾的是,我的 C 语言技能不是很好,无法检查 Python 绑定中是否进行了一些奇怪的转换。

我在这里完全错过了什么吗?

这是代码摘录:

0 投票
1 回答
460 浏览

python - python - fontforge 无法解析 Tornado 服务器中的 svg 文件

我正在尝试在 Ubuntu VM 上安装 Tornado 服务器,其任务是从 .svg 文件开始生成完整的字体包。我在没有服务器的情况下运行了以下脚本,效果很好。 https://gist.github.com/jorgegarciadev/6127832

现在我尝试在我的服务器上执行此任务,Fontforge 似乎对 .svg 文件有问题。一开始我以为是块问题,好像我的文件没有被完全读取或发送,但是当我在服务器上打开最近上传的文件时,它是完整的并且与原始文件具有相同的大小。更令人不安的是,Fontforge 告诉我这个文件不是字体文件。这就是让我想到块的东西(因为它似乎是解析错误)

pastebin 上的 SVG 文件就在那里: http: //pastebin.com/ai5pr1DG

python服务器代码:

启动服务器并单击客户端上的“上传”按钮后的输出:

如果有人发现这里缺少什么,那将是一种解脱,因为我真的在这方面苦苦挣扎。

0 投票
0 回答
135 浏览

unicode - 如何在字体的 PUA 区域添加新的阿拉伯元音符号?

我使用的是 Ubuntu 14.04,FontForge 从 7 月 31 日的 Git 存储库编译而来。

我正在尝试将元音符号添加到阿拉伯字体 Graph,由 Future Soft Egypt: http: //openfontlibrary.org/en/font/graph 我已经添加了 Unicode 代码点已经存在的字形(例如 peh , U+067E),并且效果很好。我现在正在尝试在不存在 Unicode 代码点的地方添加一个元音符号 - 它是一个“带尾巴的 damma”,被斯瓦希里语的一些作家用来表示“o”。

我决定把它放在 U+E909 的 PUA 中,并复制字体的 damma (U+064F) 并添加一个尾巴: http ://kevindonnelly.org.uk/swahili/images/dammas.png 我生成了字体,并设置键盘以发出该字符。

字形出现正常,但有两个问题,如下所示:http: //kevindonnelly.org.uk/swahili/images/output.png 在顶部显示“bubu”,使用原始 damma,在底部显示“bobo”,使用新的 damma-with-tail。

(1) damma-with-tail 向左太远,即使 FF 中的锚点没有移动。

(2) 更糟糕的是,damma-with-tail 意味着只有辅音字形的孤立版本被使用 - 在第二行中,两个 b 应该连接起来,就像在第一行中一样。

我不确定这是否是使用 PUA 的功能,还是因为我错过了我需要在 FF 中采取的一些步骤(例如,需要为辅音完成的编码 -> 添加编码槽),但是如果有人能阐明如何解决这两个问题,我将不胜感激。

0 投票
1 回答
289 浏览

svg - 是否可以从命令行从 SVG 创建字体(TTF)?

我有一组 SVG 我想变成字体 (TTF) - 但它必须以自动化方式完成 - 这可能吗?

似乎 fontforge 等都需要一些人工交互。