Linux项目实战——文字系统、UI系统、页面系统(后附百问网课程视频链接)

目录

一、文字系统

1. 数据结构抽象 

2. 实现Freetype代码 

3. 文字管理 

4. 单元测试

5.错误记录

二、UI系统

1. 数据结构抽象

2.按键编程

        2.1 实现OnDraw()

        2.2  实现OnPressed()

三、页面系统

 1. 数据结构抽象

 2. 页面管理器

课程链接:


一、文字系统

1. 数据结构抽象 

        1.字符描述(FontBitMap)

        2.字体文件的操作函数(FontOpr)

2. 实现Freetype代码 

        关键API:

  1. FT_Init_FreeType(FT_Library *alibrary)
    • 用法:用于初始化 FreeType 库。
    • 入参:alibrary 是一个指向 FT_Library 类型的指针,用于存储初始化后的库对象。
    • 回参:返回 FT_Error 类型的值,表示操作是否成功。成功返回 FT_Err_Ok 。
  2. FT_New_Face(FT_Library library, const char *filepathname, FT_Long face_index, FT_Face *aface)
    • 用法:加载字体文件并创建一个字体面(face)对象。
    • 入参:
      • library:已初始化的 FreeType 库对象。
      • filepathname:字体文件的路径。
      • face_index:指定要加载的字体面索引,通常为 0 表示默认的字体面。
      • aface:用于存储创建的字体面对象的指针。
    • 回参:返回 FT_Error 类型的值,指示操作的成功或失败。
  3. FT_Set_Pixel_Sizes(FT_Face face, FT_UInt pixel_width, FT_UInt pixel_height)
    • 用法:设置字体的像素大小。
    • 入参:
      • face:要设置大小的字体面对象。
      • pixel_width:字体的像素宽度。
      • pixel_height:字体的像素高度。
    • 回参:返回 FT_Error 类型的值,表明操作的结果。
  4. FT_Load_Char(FT_Face face, FT_ULong char_code, FT_Int32 load_fl
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值