首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何将位图字体(.FON)转换为真实字体(.TTF)?

如何将位图字体(.FON)转换为真实字体(.TTF)?
EN

Stack Overflow用户
提问于 2010-09-20 09:29:52
回答 12查看 73.1K关注 0票数 24

我的程序(win32,Delphi)需要在表的某些列中显示特殊的字符。为此,我对这些列使用特殊字体。我从我的客户那里拿到了字体。这是一个.FON字体。它在屏幕上工作很好,但我经常遇到问题,因为我想用它打印一些东西。

我想把这个.FON字体转换成真字体(.TTF),以避免出现问题。我不在乎字体是否缩放得不好。当在屏幕上使用与原始字体的默认大小相同的大小时,我应该看起来完全一样。有人知道怎么做吗?

(它不需要源代码解决方案。字体不会变。如果我找到一个工具来做这件事就够了)

编辑:理想的做法是获得一个真实字体,其中原始字体的每个像素被转换成一个矢量黑色方格(我通过手动重绘几个字符进行测试,它将按照我的意愿工作)。

编辑2,解决方案使用:使用FontForge + 自迹,然后手动进行更正,我得到了一个向量字体,它遵循位图字体像素的轮廓。这种矢量字体的缩放比原来的字体要好一些,解决了我的打印问题。详情见已接受的职位。

但我仍然感兴趣的是,如果有人知道一个全自动的解决方案。

EN

回答 12

Stack Overflow用户

回答已采纳

发布于 2010-09-21 09:23:41

使用FontForge + 自迹,然后手动进行一些更正。

首先,在范特福尔中集成自动跟踪,参见FontForge中的自动跟踪位图。以下是我是如何做到的,因为我无法使用win32版本的FontForge:

  1. 下载、解压缩并启动便携式Ubuntu Tres。这是一个特殊的linux版本,在Windows下工作!
  2. 选择System->Administration->添加/删除应用程序,搜索并安装FontForge (管理员密码为123456)。我安装了FontForge 20090622版本。
  3. http://autotrace.sourceforge.net/index.html#download下载autotrace-0.31.tar.gz,并将其复制到Portable的主目录中。
  4. 在便携式Ubuntu中,选择应用程序->附件->终端来编译和安装自动跟踪: sudo (密码为123456) gunzip自动跟踪-0.31.1.tar.gz tar xf自动跟踪-0.31.1.tar cd自动跟踪-0.31.1。

然后转换您的字体:

  1. 在便携式Ubuntu中启动FontForge并打开.FON字体。
  2. 将您的字体保存为.BDF字体(作为背景加载.FON文件对我无效,所以我必须首先转换字体):File->Generate字体并选择BDF作为格式。
  3. 创建一个新的字体并导入BDF作为背景字体: File->Import,并且不要忘记选择“作为背景”。
  4. 选择所有字符,并在按住shift键时启动自动跟踪,以便输入自动跟踪的参数。我使用了以下参数,这提高了像素轮廓的识别,但没有找到完美的参数: -角-环绕声=1行-阈值=10
  5. 使用“添加曲线点”函数手动更正字符。激活视图->显示->几乎水平/垂直线使工作更容易。
  6. 生成一个truetype字体: File->Generate字体并选择truetype作为格式。
票数 16
EN

Stack Overflow用户

发布于 2011-12-02 01:21:37

我知道这个问题是老的,但值得的是,我能够轻松地使用.fon将旧的.ttf转换为PixFont。我以管理员身份运行它(没有安装--一种旧的可执行文件),它生成了一个很好的TTF,尽管原始的.fon缺少一些正确的符号。

而且,虽然它不是免费的,但它的价格几乎是29美元,特别是与那些非常昂贵的商业产品相比。

票数 11
EN

Stack Overflow用户

发布于 2012-05-08 14:58:23

对于那些不想编译fontforge (用于windows)的人,在这里获取一个下载:http://www.mpetroff.net/software/fontforge-windows/

该生成使用potrace而不是自动跟踪。我为正在转换的字体(vgasys.fon)获得的最佳参数是:

--turdsize 0 --opttolerance 0 --unit 1 --longcurve --gamma 0 --blacklevel 0 --cleartext

要使字体看起来很好还需要花上几个小时的手工工作(通过添加和移除点)。

票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3750124

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档