本文主要是介绍嵌入式 初探freetype字体库,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
文字的显示依赖于字体字库,大致的字体字库分为点阵字库、笔画字库和轮廓字库。
点阵字库:缺点比较明显,缩放存在锯齿,渲染旋转等操作相对复杂,且效果不理想,先大多用在嵌入式行业(基本抛弃),常见格式有bdf,pcf,fnt,hbf,hzf等。
笔画字体:不讨论。
轮廓字体:即矢量字体,利用字体轮廓及填充实现字体显示,优势明显,渲染缩放较容易,但效率相对低些(相对于嵌入式)
简单来说,freetype为字体字库提供了一套解决方案,支持文字字体渲染等操作,主要还是其为C语言编写,跨平台,为很多不支持矢量字体格式的嵌入式系统提供使用嵌入式字体的可能,且效率不低。
基本流程为:
加载字体字库文件-> 查找待显示的文字索引-> 渲染操作(若反走样处理)->处理为位图数据->显示
freetype官网http://freetype.sourceforge.net/index2.html
下面为在XP下显示中文字体的实例,在官方下载源码,在..\freetype-2.4.2\builds\win32\vc2008\下打开工程,编译为链接库,新建VS2008的MFC程序,加载freetype242.lib库。
简单考虑,直接在MFC中的draw函数中画出一个中文汉字。便于显示,使用GDI+画出汉字,因此首先对GDI+进行初始化等操作(GDI+的相关知识不讨论,不清楚可以留言或索取GDI+文档,网上也可以搜搜)
在view.h中添加头文件声明
1 2 | #include #include FT_FREETYPE_H |
这篇关于嵌入式 初探freetype字体库的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!