Chinaunix首页 | 论坛 | 博客
  • 博客访问: 299474
  • 博文数量: 76
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 715
  • 用 户 组: 普通用户
  • 注册时间: 2015-05-20 20:38
文章分类
文章存档

2016年(20)

2015年(56)

分类: 嵌入式

2015-08-23 16:45:47

fonts_manager.c

158月2215:56:22

这篇代码也比较少,直接在上面注释了~~

#include <config.h>

#include <fonts_manager.h>

#include <string.h>


static PT_FontOpr g_ptFontOprHead = NULL;


int RegisterFontOpr(PT_FontOpr ptFontOpr)

{

PT_FontOpr ptTmp;


if (!g_ptFontOprHead)

{

g_ptFontOprHead = ptFontOpr;

ptFontOpr->ptNext = NULL;

}

else

{

ptTmp = g_ptFontOprHead;

while (ptTmp->ptNext)

{

ptTmp = ptTmp->ptNext;

}

ptTmp->ptNext = ptFontOpr;

ptFontOpr->ptNext = NULL;

}


return 0;

}



void ShowFontOpr(void)

{

int i = 0;

PT_FontOpr ptTmp = g_ptFontOprHead;


while (ptTmp)

{

printf("%02d %s\n", i++, ptTmp->name);

ptTmp = ptTmp->ptNext;

}

}


/* 通过函数参数 pcName与链表中每一项的名字作比较,如果匹配,就返回这个结构体,如果遍历完链表都

* 没有匹配的结构体,就返回NULL

*/

PT_FontOpr GetFontOpr(char *pcName)

{

PT_FontOpr ptTmp = g_ptFontOprHead;

while (ptTmp)

{

if (strcmp(ptTmp->name, pcName) == 0)

{

return ptTmp;

}

ptTmp = ptTmp->ptNext;

}

return NULL;

}



int FontsInit(void)

{

int iError;

iError = ASCIIInit();

if (iError)

{

DBG_PRINTF("ASCIIInit error!\n");

return -1;

}


iError = GBKInit();

if (iError)

{

DBG_PRINTF("GBKInit error!\n");

return -1;

}

iError = FreeTypeInit();

if (iError)

{

DBG_PRINTF("FreeTypeInit error!\n");

return -1;

}


return 0;

}



阅读(1460) | 评论(0) | 转发(0) |
0

上一篇:电子书-fb.c

下一篇:电子书-Main.c

给主人留下些什么吧!~~