



计算机处理的图像可以分为两大类别:一类是矢量图(也被称为向量图),另一类是位图。Scratch编程中也常常用到这两种图像类别,有必要阐明它们的概念和用法。
矢量图是根据几何特性来绘制图形,是用线段和曲线描述图像,这种类型的图像文件包含独立的分离图像,可以自由无限制的重新组合;位图图像也称为点阵图像,位图使用一格一格的小点(像素)来描述图像。我们可以具体举例来说明这些概念,假设同样是一根直线这个图像,矢量格式可能是这样描述的:直线、端点一坐标、端点二坐标、线宽、线的颜色。而位图格式可能是这样的:像素点1的颜色、像素点2的颜色、一直到像素点n的颜色(具体存储时,JPG\PNG\BMP等不同的存储格式有不同的图像压缩方式,但原理是一致的)。如果希望加深对这一概念了解,建议用文本编辑软件打开矢量格式的图像文件(例如SVG)和位图格式的图像文件(如JPEG、BMP)观察一下,前者显示的是可读的文字字符,而后者是人类难以读懂的二进制。
由于矢量图与位图在描述图像方式上的不同,所以两者各有优缺点,例如矢量图可以无限放大而不失真,而位图放大到一定比例就会出现“毛刺”现象(见图2-2);另外,矢量图文件实际是文本格式,所以存储空间的占用要远远小于记录每个像素点颜色数据的位图格式的文件;矢量图还有一个非常大的优势,尤其是在Scratch编程中,它可以支持后期的图像编辑,而位图格式的文件就无法做到这一点,矢量图的这一特性在动画软件的制作中,特别适合用来绘制各式各样的新奇的图像。图2-3演示了使用矢量图面板上的“变形工具”拖拽小猫图像脚部顶点进行图像编辑。
 
    图2-2 矢量图与位图放大后的对比
 
    图2-3 矢量图的编辑界面
相对于矢量图,位图也仍有它的优势,例如位图可以表现色彩丰富的图像,逼真地呈现自然界各类实物;而矢量图色彩不够丰富,无法逼真展现实物。由于这些异同点,矢量图和位图都有它最适合的应用场景,并不是简单地认为哪一种图像更优于另一种图像。
关于两者的差别,我们可以用一个简单的比喻来概括:矢量图是用彩笔按尺规作图的方法画出来的,而位图则是用摄像机拍摄出来的。
两者异同点比较如下:
表2-1 矢量图与位图异同点
 
   Scratch自带的画板软件界面,右下角有一个命令按钮可以在位图格式和矢量图格式之间进行转换。