前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【答疑释惑第十六讲】屏幕上的图片是如何显示出来的?

【答疑释惑第十六讲】屏幕上的图片是如何显示出来的?

作者头像
程序员互动联盟
发布2018-03-15 15:42:29
1.4K0
发布2018-03-15 15:42:29
举报
文章被收录于专栏:程序员互动联盟
疑惑一

什么是点阵字库?

点阵字库主要用于简单的嵌入式设备,字体大小一旦选定,就不能变化。比如以前老式手机上的字,一旦选定点阵字库就不能再变化。点阵字库是一个二维的位数组,用位的0和1来表示字符图形。比如下面的“春”字:

一般图中位于笔画上的就是1,否则就是0,这些0和1的位所组成的数据就是点阵字模,点阵字库就是很多这种字模数据构成的。所以在绘制文字时,凡是1的位置就画一个前景色,否则就画背景色,于是就能得到这个字的形状。输入关键字嵌入式获取学习方法和资料,不懂的可以继续后台问。

疑惑二

什么是矢量字库?

矢量字库一般用于比较复杂一些的设备,比如电脑、平板以及现在的只能手机。矢量字库不存放每个字符的点阵信息,因为矢量字体是可以缩放的,它仅仅是存储了用于绘制字符的轮廓信息,因此可以进行轮廓总体缩小和放大,而字体形状不变。当然最后显示矢量字库的时候,还是必须在特定的字号下转换成点阵信息,但这个点阵是临时计算的。

疑惑三

屏幕上的图片是如何显示出来的?

图片是通过屏幕上一个个像素点描出来的。每个点都有他自己的颜色,这个颜色就是由图片数据中获得的。

首先要明白什么是位图?这个问题看起来问得很笨,其实有很多初学者未必知道图片是怎么显示出来的,这里的位图并非是bmp格式的图片文件,而是所以图片在解码后存在的一个显示方式。

上面的点阵字库的显示其实就是一个2位的位图,只有0和1两种颜色。当然这两种颜色可是是任何两种,但只有两色。而图片可以有非常丰富的色彩,显然只用两种颜色来表示就不行了,于是人们就想到用跟多的位数来表示颜色,比如2位、4位、8位和16位数来表示一个像素点的颜色可以分别表示4色、16色、64色和256色,这种颜色比较少的一般用调色板,每个像素的颜色实际是颜色在调色板中的位置索引值,实际显示时,通过这个索引值去查真实对应的颜色并显示。大于16的比如24位,一般就直接记录颜色数据,因为这时再用调色板,这个调色板数据就太大了,得不偿失。


本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2015-12-14,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 程序员互动联盟 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
图像处理
图像处理基于腾讯云深度学习等人工智能技术,提供综合性的图像优化处理服务,包括图像质量评估、图像清晰度增强、图像智能裁剪等。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档