平时常用的图片格式有 bmp、jpg(jpeg)、gif、png 等。其中,bmp 是无损压缩,文件体积比较大,通常都会用其他格式来代替 bmp。所以本文着重讲 jpg、gif、png 三种格式。
首先必须要提到的是:修改图片扩展名并不会修改图片格式。图片格式,是图片各像素点的组织方式,不同的格式有不同的文件头和压缩算法等。而扩展名,仅仅是一个格式的标识,方便人们辨识格式。只修改扩展名,会造成图片文件的标识与内容不符,影响图片加载。因此,必须通过绘图软件将图片保存为相应格式。
jpg 适合保存照片这类颜色丰富、图案复杂的图像,使用有损压缩。尤其在保存简单颜色的图像时,有损压缩会使颜色边缘出现“不干净”的问题。
gif 适合保存颜色简单、内容简单的图像,使用无损压缩。最大支持 256 色。
png 可以认为是 gif 的升级,采用了更优秀的无损压缩算法。
看图最能说明问题:
原图,一只可爱的小绵羊:
使用 jpg 格式保存,由于 jpg 采用了有损压缩算法,保存后的图像放大看是这样的(下图左):
使用 gif 和 png 格式保存,因为无损压缩,两种格式都可以得到清晰的无损图像(下图右):
很明显,在这种颜色内容都很简单的图象上,gif 和 png 有非常大的优势。但是,保存照片这类图像时,如果还用 gif 或 png,文件体积可能会是 jpg 的五倍甚至十倍以上。何况 gif 还有颜色数量的限制。
手机和数码相机拍的照片,通常都会使用 jpg 保存。文件体积的问题就不举例了,一试便知。
对于需要照片风格背景的素材,通常都会用 jpg 格式保存。使用 photoshop 将图片另存为 jpg 时,会有“图像品质”选择,选择范围 0~12,选择 0 表示品质最低、体积最小,选择 12 表示品质最高、体积最大。一般在品质和文件体积之间做个折中,选择 8 就可以了。具体的可以自己试试看效果,这个没多大难度,多保存几次就可以看出来区别。
素材源为无损格式(比如 bmp、tif、png 等)时,由于这些格式通常不会造成图像信息丢失,按照以下步骤保存为 gif 格式:
素材源为有损压缩格式(比如 jpg 等)时,由于压缩导致的图像信息丢失是不可逆的,经常需要手动做一些边缘清理工作。可以试试这个步骤(并非唯一):
png 与 gif 格式类似,比 gif 的压缩算法更好,但是文件头尺寸比 gif 大。所以一般来说:
经常有程序需要将操作步骤录制成动画,放到网上做说明或展示用。由于 flash 逐渐被取代,目前可以在网页上播放的动画,仍以 gif 为主。所以这一节讲怎么制作 gif 动画素材。
录制屏幕为 gif 动画的工具非常多,比如 ScreenToGif、ScreenFlash 等等。操作也都非常简单,指定录制区域,然后录制,然后保存,就好了。通常录下来的文件没有经过优化,体积会比较大。
优化 gif 动画的工具也很多,这里说两个:Adobe ImageReady 和 UleadGifAnimator。
Adobe ImageReady,可以编辑 gif 动画的每一帧。从 cs3 开始,ImageReady 集成到了 Photoshop 里面,点击 Photoshop 菜单的“窗口->动画”,可打开 gif 的帧编辑。然后要执行的操作包括:
都调整完以后,保存即可。
UleadGifAnimator 的操作方法大同小异,不过 UleadGifAnimator 多了一个专门的“优化”界面,操作更直观了一些。
通过优化,可以使 gif 动画的文件尺寸大幅降低,甚至能达到原文件的 1/10 大小。这种优化对于访客浏览自己的文章是很重要的。