登录 注册
当前位置:主页 > 资源下载 > 43 > ?正点原子】i.mx6u嵌入式linux驱动开发指南v1.4中的点阵字库偏移计算

?正点原子】i.mx6u嵌入式linux驱动开发指南v1.4中的点阵字库偏移计算

  • 更新:2024-09-04 18:52:14
  • 大小:547KB
  • 推荐:★★★★★
  • 来源:网友上传分享
  • 类别:图像处理 - 音视频
  • 格式:PDF

资源介绍

2.4 点阵字库偏移计算 在使用点阵字库时,需要先计算出字符在字库中的偏移,然后根据这个偏移 在字库中查找出对应的字符。在计算偏移量时,分为ACSII点阵和汉字点阵。 2.4.1 ACSII字符点阵偏移量计算 若添加的信息为常见英文字母、数字、符号等,可采用ASCII码点阵。如何 寻找字符在ASCII字库中的偏移量,采用方法如下: 点阵字库中的字符排序是符合ASCII顺序的,而每个字符长度为:len=(字符 长*字符宽)/8个字节的长度(如8*16点阵为:8*16/8=16),因此,将要打印的字 符与每个字符长度len相乘,便得到这个字符在字库中的位置了,即偏移地址, 这个位置之后的len个字节的数据就是这个字符了。(对于数组方式存放而言, 数组基地址加上这个偏移地址就是要打印字符的基地址) 如:在8x16 ASCII点阵中,字母“A”,十六进制地址是0x41,他与 16(0x10)相乘,得到0x410,这个地址就是字母“A”在ASCII码8*16点阵字库 中的地址,该地址所指向的16字节的数据便是字母“A”。 2.4.2 汉字点阵偏移量计算 常用的汉字点阵字库是符合GB2312标准的点阵字库,如HZK16(16x16)、 HZK24(24x24)等等。在GB2312标准中对收入的汉字进行了“分区”处理,每区含 有94个汉字/符号,这种表示方法称为区位码。 计算汉字在字库中偏移量时,采用的方法叫区位码计算法。在GB2312标准 中,每个汉字由两个字节进行编码表示。其中,前一个字节为该汉字的区码,后 一个字节为该汉字的位码,区码/位码的计算方法如下: ● 区码:汉字的第一个字节-0xA0(因为汉字编码是从0xA0区开始的)