TrueTypeFont文件作为流行的矢量形式字体文件,其中存储着大量的符号资源。为充分利用资源与达到数据共享目标,现以freetype2源代码为文件读取功能的支撑,导出TrueTypeFont文件中存储的符号并实现绘制。要注意的问题:
1) 英文与汉字映射关系以Unicode编码为准。汉字为双字节,即宽字符。而符号以数字为索引依次读出。
2) 为避免重复和加速,可预先做链表,将新创建的符号填入,以方便再次查询时直接读出。
3) 使用De Casteljau 算法处理贝塞尔(Bezier)曲线。
附参考代码:
程序入口:
Process()
{ const char* font_filename = "C:\\Windows\\Fonts\\WINGDNG3.TTF";
fonts = new FTGLOutlineFont( font_filename ); //矢量轮廓,以文件名称为参数
const unsigned char* c = (unsigned char*)string;
while( *c) //依次处理字符
{
&nb

本文介绍如何利用freetype2库导出TrueTypeFont文件中的符号,并进行绘制。通过Unicode编码处理英文与汉字映射,使用De Casteljau算法处理贝塞尔曲线。程序入口从指定字体文件读取,检查并添加字符到链表,避免重复。
最低0.47元/天 解锁文章
1101

被折叠的 条评论
为什么被折叠?



