当前位置: 首页 > 软件库 > 其他开源 > 开源字体 >

FreeType

字体工具
授权协议 BSD
开发语言 C/C++
所属分类 其他开源、 开源字体
软件类型 开源软件
地区 不详
投 递 者 何兴安
操作系统 跨平台
开源组织
适用人群 未知
 软件概览

FreeType 2被设计为一种占用空间小的、高效的、高度可定制的、并且可以产生可移植的高品质输出(符号图像)。可以被用在诸如图像库、展出服务器、字体转换工具、图像文字产生工具等多种其它产品上。

请注意FreeType 2是一种字体服务而没有提供为实现文字布局或图形化处理这样高阶的功能使用的API(比如带色文字渲染之类的)。然而,它提供一个简单的、易用的并且统一的接口实现对多种字体文件的访问,从而大大简化了这些高级的任务。

FreeType 2的发行遵循两个开源许可:我们自己的BSD样式的FreeType License和GPL(通用公共许可证)。它可以被用在任何程序中,无论是专有与否。

特性

下面是 FreeType 2 提供的特性的一个不完全列表:

1. FreeType 2 为访问字体文件提供了一套统一的、独立于字体文件类型的、简单而易用的API。另外,一些特别类型的API可以用来访问字体文件里的特殊数据。

2. 与大多数同类的字库不同,FreeType 2 生来就支持类似TrueType 或者 Type 1的可缩放字体类型,并且可以将字体的大纲数据(控件介绍/提示)返回给各户应用程序。

3. FreeType 2 的设计是基于模块的,这些模块可以在编译时被静态链接到库中或者在运行时根据需要加载。模块可以用来支持特殊的字体格式,或者甚至是新的符号图像类型!

4. FreeType 2 特意使用嵌入式系统编写,这意味着它不使用静态可写数据(也就是说,它可以直接从ROM中运行),这样客户程序就可以只为他们自己提供内存管理和输入/输出流的实现。

5. 客户程序自己的输入/输出流可以使你轻易地使用相同的API读取基于ROM或被压缩的或远程的字体文件。多个流实现可以并行的被一个FreeType 2 实例使用。

6. 你可以只编译那些你的嵌入式工程或环境需要的模块,从而有效的减小FreeType 2 的代码大小。

7. FreeType 2 默认支持下面的字体类型:
TrueType 字体(集合)
Type 1 字体
CID-keyed Type 1 字体
CFF 字体
OpenType fonts (包括 TrueType 和 变体CFF )
SFNT-based bitmap 字体
X11 PCF 字体
Windows FNT 字体
BDF 字体 (包括反走样类型的)
PFR 字体
Type 42 字体 (有限支持)

8. 通过一个给定的字形轮廓,FreeType 2 有能力产生一个高质量的单色位图或一幅使用年256阶灰度的不走样的像素图。这比Windows 9x/98/NT/2000 或 FreeType 1使用的5阶灰度像素图要好得多。

9. FreeType 2 支持 TrueType 和 OpenType 规格定义的全部字符映射。同时,它也完全有能力自动合成Type 1 使用的那种Unicode字符表,这种表要求必须把一个那种令人头痛的供转换编码时使用的结束符放置在标的末尾——这在Type 1 使用的那种格式中是很常见的(当然,如果你需要,那种原始的编码方式也是可用的)。

10. FreeType 2 的核心API提供了对访问字形名或调整数据中字符间距这样的高级信息的函数支持。

11. 一个完整且有效率的TrueType字节码解释器。这个引擎可以用很小的点产生极好的输出。由于TrueType规格极其令人费解且十分含糊,这个组件想要成功完成输出是极其困难的。但无论如何,我们现在已经能使Windows的显示质量达到Mac的水平。

12. 对于那些不需要或不希望为TrueType字体使用字节码解释器的人,我们开发了我们自己的自动提示模块。这种模块过去也曾被一些可缩放的字体使用过。

13. FreeType 2 可以产生一些相似的字体引擎无法产生的信息,例如字距调整的位距、字符名、垂直度量之类的。由于它模块化的设计,可以很方便地通过可选的API更改FreeType库来提供另外的针对特定字体类型的信息。(例如,一个可选的API用来检索TrueType 和 OpenType 字体的SFNT表。

14. 自从2.0.1版发布开始,FreeType 2 开始提供它自己的超高速缓存子系统。可以利用它缓存可变实例或字形图像,使它们拥有更高的效率。

 相关资料
  • 我使用屏幕高度百分比和设置百分比(显然将来会乘以密度的百分比)动态生成字体。 一些笔记。我在读OTF文件。使用最新版本的LibGDX(1.2.0) 我有以下的问题:(字体中大的缺口看起来很模糊,但只有在中号上。大的和小的看起来很锐利) 我的字体生成器设置 创建实际字体: 现在我已经在不同的设备上尝试了一些东西,但仍然有同样的问题。我想可能是因为它不是2的幂?(字体需要是2的幂才能是偶数吗?) 有人

  • Freetype GL - A C OpenGL Freetype engine A small library for displaying Unicode in OpenGL using a single texture anda single vertex buffer. Installation instructions Code organization Mandatory files

  • FreeType 库是一个完全免费(开源)的、高质量的、可移植的字体引擎,它提供统一的接口来访问多种字体格式文件,包括 TrueType、OpenType、Type1、CID、CFF、Windows FON/FNT、X11 PCF 等,支持单色位图、反走样位图的渲染。 FreeType 库是高度模块化的程序库,虽然它是使用 ANSI C 开发的,但是采用面向对象的思想,因此,FreeType 的用

  • 搜狗输入法安装之后,系统字体会发生变化,默认会变成楷体,非常不好看。 解决方案,删除下面的这两个字体文件 cd /usr/share/fonts/truetype/arphic sudo rm -f ukai.ttc uming.ttc 然后重启即可。

  • 我正在使用nunitosans字体库,但只有普通字体可以在移动应用程序上使用, 这是我的react-native.config.js文件上的内容, 我已经运行了npx react-native链接,但其他字体粗细不起作用,例如粗体 Android文件结构 移动应用程序上未应用粗体字体系列的屏幕 文本组件 粗体和半粗体字体系列不起作用,只有常规字体系列工作

  • 我有自己的工具栏,我想为我的标题自定义字体,但我无法让它工作。 我想我做对了,但它什么都没做。