导航
  • 报考
  • 备考
  • 政策

报考

备考

复习资料

政策

行业动态

干货|让python变好玩,python实现点阵字体

环球网校·2019-10-14 17:59:42浏览258 收藏51

请输入下面的图形验证码

提交验证

预约成功

我知道了
摘要 当今世界充满了各种数据,而python是其中一种的重要组成部分。然而,若想其有所应用,我们需要对这些python理论进行实践。其中包含很多有趣的的过程,然后将其用于某些方面。其中一种应用就是python实现点阵字体。今天环球网校的小编就来和大家讲讲python实现点阵字体。

python实现点阵字体介绍

今天给大家分享的是利用python实现点阵字体,可能大家对这个名词不太熟悉。给各位找了专业的解释:点阵字体是把每一个字符都分成16×16或24×24个点,然后用每个点的虚实来表示字符的轮廓。点阵字体也叫位图字体,其中每个字形都以一组二维像素信息表示(来源百度百科)。如下图,就是点阵字体

 

要实现这个python实现点阵字体功能要借助点阵字库HZK16。

HZK16字库是符合GB2312标准的16×16点阵字库,HZK16字库里的16×16汉字一共需要256个点来显示,也就是说需要32个字节(一个字节占8位)才能达到显示一个普通汉字的目的。所以我们只要去HZK16字库中获取点阵信息,拿到信息后根据16*16点阵每个点的数据,print出不同字符即可。

python代码实现

首先需要得到汉字的区码和位码

我们知道,一个汉字占两个字节,这两个中前一个字节为该汉字的区号,后一个字节为该字的位号。

区码:汉字的第一个字节-0xA0,因为汉字编码是从0xA0区开始的,所以文件最前面就是从0xA0区开始,要算出相对区码

位码:汉字的第二个字节-0xA0

 

通过区码和位码计算在点阵字库中的偏移量,基于偏移量在HZK16文件中找到对应的32个字节字模数据。

注意:在本代码中HZK16文件是和代码文件在同一目录。如需更改,记得写对路径。

 

解析字模数据获取点阵坐标信息

 

获取到的16*16点阵信息,打印到控制台

 

以上就是python实现点阵字体。可能在刚讲解完这一实际应用之后,大家的印象还很模糊,不如打开电脑,那正好现在就上手操作一下,试一试吧!也许你还会发现更多python应用为您带来的乐趣环球网校的小编在这里希望这些信息可以对您有所帮助。

资料下载
历年真题
精选课程
老师直播

注册电脑版

版权所有©环球网校All Rights Reserved