图片格式与设计那点事儿

作者:平四 来源:taobaoUED 时间:2011-01-06 12:17:00 

第一次写技术博客,有不尽如人意的地方,还请见谅和指正。

为什么想整理这方面的类容,我觉得就像油画家要了解他的颜料和画布、雕塑家要了解他的石材一样,作为网页设计师也应该对图片格式的特性有一定了解,这样才能更好的表达你的创意和想法。

除此之外,我们在平时工作中也会遇到许多与图片格式相关的问题。比如设计师会奇怪为什么有些页面的产出物总是没法达到设计稿那样的品质和效果,什么样的设计才更适合Web页面;页面重构师和前端工程师则想知道在切图的时候应采用什么图片格式、如何进行参数设置才能达到品质和性能的最优化。

有时候我们可能会因为一张格式不正确的图片而导致设计品质的下降以及页面性能的降低。了解图片格式的特性就是为解答这些困惑从而让我们设计的产品更好、更快。

本文主要包括以下几方面内容:

  1. 1、基本概念

    • 矢量图与位图

    • 有损压缩与无损压缩

  2. 2、实际应用

    • 什么时候应该使用PNG

    • 什么时候应该使用JPG

    • 总结

  3. 3、思考与实践

    • 什么样的设计更适合Web页面?

    • 我们还可以做些什么?

  4. 4、附录-Photoshop中各种参数的含义及设置技巧

1、基本概念

要了解图片格式的特性,首先得从一些基本概念开始。这部分内容读起来可能会比较枯燥,但如果你耐着性子读完它,相信会获益匪浅。


矢量图与位图

矢量图-完美的几何图形

矢量图是通过组成图形的一些基本元素,如点、线、面,边框,填充色等信息通过计算的方式来显示图形的。就好比我们在几何学里面描述一个圆可以通过它的圆心位置和半径来描述,当然还可以通过边框的粗细、颜色以及填充的颜色等数据去描述它的样式。而电脑在显示的时候则通过这些数据去绘制出我们定义的图像。

矢量图的优点在于文件相对较小,并且放大缩小不会失真。缺点则是这些完美的几何图形很难表现自然度高的写实图像。

需要强调说明的是我们在web页面上所使用的图像都是位图,即便有些称为矢量图形(如矢量icon等)也是指通过矢量工具进行绘制然后再转成位图格式在web上使用的(区别于像素绘制的图形)。

位图-神奇的拼图

位图又叫像素图或栅格图,它是通过记录图像中每一个点的颜色、深度、透明度等信息来存储和显示图像。一张位图就好比一幅大的拼图,只不过每个拼块都是一个纯色的像素点,当我们把这些不同颜色的像素点按照一定规律排列在一起的时候,就形成了我们所看到的图像。所以当我们放大一幅像素图时,能看到这些拼片一样的像素点(如下图)。

位图的优点是利于显示色彩层次丰富的写实图像。缺点则是文件大小较大,放大和缩小图像会失真。

尽管我们在web页面中所使用的JPG、PNG、GIF格式的图像都是位图,即他们都是通过记录像素点的数据来保存和显示图像,但这些不同格式的图像在记录这些数据时的方式却不一样,这就是涉及到有损压缩无损压缩的区别。

标签:图片,格式,设计,jpg,png
0
投稿

猜你喜欢

  • SQL Server 高性能写入的一些经验总结

    2024-01-21 10:46:37
  • 并行查询让SQL Server加速运行

    2009-03-16 16:31:00
  • Perl哈希表用法解析

    2023-08-23 19:12:48
  • 发个选星星打分/投票功能函数

    2008-05-22 12:38:00
  • Python数据结构与算法之图的广度优先与深度优先搜索算法示例

    2022-05-05 07:34:53
  • 简单的Vue SSR的示例代码

    2023-07-02 17:08:46
  • mysql 5.7.20常用下载、安装和配置方法及简单操作技巧(解压版免安装)

    2024-01-15 17:21:24
  • 解决asp中ADODB.Stream 0x800A0C93 错误

    2008-01-08 19:28:00
  • python计算两个地址之间的距离方法

    2023-09-01 01:40:59
  • 深入SQL截取字符串(substring与patindex)的详解

    2024-01-27 16:16:24
  • 如何利用pandas将Excel转为html格式

    2023-12-14 19:04:49
  • Python中ROC曲线绘制

    2023-05-28 16:38:15
  • Dreamweaver基础技巧全面接触

    2010-03-25 12:23:00
  • 浅谈Golang Slice切片如何扩容的实现

    2024-04-29 13:06:28
  • python设计模式之抽象工厂模式详解

    2023-06-11 22:15:51
  • python密码学各种加密模块教程

    2021-03-10 05:32:55
  • python unicodedata模块用法

    2021-04-05 20:53:55
  • Python+Turtle绘制可爱的可达鸭

    2021-06-18 10:20:29
  • vue+springboot实现项目的CORS跨域请求

    2024-05-09 09:48:23
  • python多进程中的内存复制(实例讲解)

    2022-01-20 23:34:46
  • asp之家 网络编程 m.aspxhome.com