`
天梯梦
  • 浏览: 13785878 次
  • 性别: Icon_minigender_2
  • 来自: 洛杉矶
社区版块
存档分类
最新评论

网站图片JPG、PNG、GIF哪个好,该选择谁

 
阅读更多

目前网站图片的采用一共有流行三种,分别是JPG、PNG、GIF,然而很多人并不知道三者在选择的时候究竟应该选谁(BMP就不考虑了吧)。虽然都可以存储图片,但是如果要发布到网上,就必须考虑速度、大小和失真程度的问题。如果你运用得好,选对图片,那样便会使网站的整体体验上升,如果你运用得不好,就会引起反效果。下面我通过文件大小等多方面的元素来讲一下网站图片的合理选择。

 

PNG、GIF、JPG 介绍

 

GIF 图片

Gif 算是比较老的图片格式了,它的色彩效果最低,用gif保存鲜艳的图片的话会让你的网站看上去非常可怕。但是gif有着不可忽视的特点:体积小,有着极好的压缩效果,支持动画,并且支持透明效果,虽然这个透明没有PNG的那样渐变透明的强大。动画选gif没错;如果你的图片只有很单调的色彩,没有渐变色,例如只有红蓝两色,那么选GIF最好不过了!例如百度的首页LOGO就是很好的例子,它的大小只有2KB,节省了资源。

baidu-logo

 

JPG / JPEG 图片

JPG是数码相机最常用的格式,其特点是色彩还原好,可以在照片不明显失真的情况下,大幅降低体积,所以体积不很大,缺点是不支持透明。照片类的图片,例如网站上的Gallery,你想要张贴出来的自然风景之类,最好都用JPG。但是屏幕截图呢?一会介绍。

photo_jpg-200x149

 

PNG 图片

可谓是最适合网络的图片!PNG的优点是,清晰,无损压缩,压缩比率很高,可渐变透明,具备几乎所有GIF的优点;缺点是不如JPG的颜色丰富,同样的图片体积也比JPG略大。但是PNG应该在网站设计上被推广,它是公认的最适合网页使用的图片格式。Google就是一个很好的例子。Google所有站点几乎全部的图片资源都是PNG格式。8位的PNG完全可以替代掉GIF。

google-pngs-500x498

上图就是Google的LOGO,选择PNG是为了最清晰同时体积更小,并且Google主页的LOGO图片并不是背景透明的,而是白色背景的。既然不是透明的,为什么不选择JPG呢?Google难道没有考虑吗,所以png有其优势。

 

PNG有着另一个优点,那就是逐次逼近显示(progressive display):传输图像文件的同时,可以先把整个轮廓显示出来,然后逐步显示图像的细节,即先显示低分辨率显示图像,从模糊到清晰,然后逐步提高它的分辨率。这是一个很好的用户体验。

 

各方面比较

大小比较:通常地,PNG ≈ JPG > GIF

透明性:PNG > GIF > JPG

色彩丰富程度:JPG > PNG >GIF

兼容程度:GIF ≈ JPG > PNG

注意,IE6下PNG的透明是不能显示的,有其对应的Hack方法。

 

PNG vs JPG 大小实测

我在电脑上用电脑自带的截图软件进行完全一样的截图,分别保存为JPG和PNG。下面是截图后所得的原始图片大小比较:

jpg-png-500x153

可以看到,JPG的大小要远小于PNG,PNG整整大了几乎110KB。要知道在网络上,即使减小10KB,也会带来用户体验的提升。

然后我用Imageoptim软件对这两张图进行无损压缩。最后你可以看到,PNG拥有着很高的压缩比,JPG则只是减小了一点。最后PNG比JPG的大小高出50KB左右,算是比较成功的压缩了。不过,这就代表屏幕截图用JPG更好吗?

jpg-png-saving-500x223

 

JPG、PNG,谁更适合截图

PNG更适合屏幕截图!png是软件截屏的最佳选择(体积非常小;最清晰),并且压缩空间非常大。事实上JPG和PNG适合的场景并不同,JPG天生适合风景照片,PNG几乎就是为了“便携网络图形图像”而生。截图保存为jpg,很容易出现失真现象,在文字、渐变色和比较精细的地方,例如线条周围,常常出现斑点、不清楚,模糊。就算提高质量,jpg的体积就上去了。而且JPG不支持透明,所以的你软件图片如果有阴影效果,用JPG就太浪费了。相对的,PNG就比较适合,在保持极少失真的情况下,还能保留透明阴影,文件体积小,而且压缩空间很大。所以,截图的选择无疑是PNG更好。

例如下图,同样一张图,PNG仅9KB左右;而JPG,为了保持良好的清晰度,需要110KB左右!GIF就惨不忍睹了。

screen-shoot

 

总结:JPG、PNG、GIF 到底选谁

对于一个网站来说,按照保证色彩显示良好同时文件最小的原则,我的总结是这样的:

网站的LOGO,如果色彩单调,选择PNG或者GIF,推荐前者。但是如果为了IE6的兼容,选择后者;

如果你需要动图,选择GIF;

网站上的元素背景图片(比如按钮背景、导航条背景),或者很精细的图片,还是那句话,如果色彩单调,选择PNG或者GIF,推荐前者。但是如果为了IE6的兼容,选择后者,但要考虑失真问题;少用JPG,否则会让这些东西很难看,除非你用风景图片作按钮背景;

网站内容里,你真实拍摄的图片,或者你下载的风景图片,保持JPG来获得更好的显示效果和体积;

截图都应该用PNG。当然,如果你并不追求非常完美的显示效果,只是注重内容本身而容许图片上的小瑕疵,选择JPG也可。

 

写在最后

不论你用哪种图片,你都应该考虑到图片的压缩性,并对图片尽可能的无损压缩。例如ImageOptim就是一个很好的压缩工具。

此外,如果你的图片非常小,你甚至可以考虑Base64

谢谢收看。

 

原文:http://blog.netsh.org/posts/jpg-png-gif_1327.netsh.html

 

justcode.ikeepstudying.com

 

分享到:
评论

相关推荐

    c#读取图片(gif,png,jpg.bmp)

    在C#编程中,读取图像文件是常见的任务,包括GIF、PNG、JPG和BMP等格式。这些格式都是数字图像的常见表示,每种格式都有其特定的特性和用途。以下将详细介绍如何使用C#来处理这些类型的图片,并提供关于VS2008环境下...

    java实现多张png,jpg等各种图片文件转动态gif图

    在Java编程环境中,将多张PNG、JPG等格式的静态图片转换为动态GIF图像是一项常见的需求。这个过程涉及到图像处理和动画制作的技术。在本文中,我们将深入探讨如何利用Java来实现这一功能,同时关注如何设置各种参数...

    PNG GIF JPG BMP转换成ICO工具

    使用这样的工具,用户可以轻松地将个人设计的PNG、GIF、JPG或BMP图片调整为适合各种屏幕尺寸的图标,而无需逐一手动修改。 转换过程通常涉及以下步骤: 1. 选择源图像:用户需要提供要转换的PNG、GIF、JPG或BMP文件...

    jpg png gif to ico

    标题中的“jpg png gif to ico”指的是将.jpg(JPEG)、.png(Portable Network Graphics)和.gif(Graphics Interchange Format)格式的图片转换为.ico(图标文件)的过程。这种转换通常用于创建网站或应用程序的...

    ASP图片批量上传 上传格式为.jpg,png,gif,bmp,jpeg

    ASP图片批量上传是一种常见的Web应用功能,特别是在电子商务网站或者内容管理系统中,用户可能需要一次性上传多张图片。ASP(Active Server Pages)是微软推出的一种服务器端脚本环境,用于生成动态网页。在这个场景...

    关于jpg_png_gif

    另外这里我们也不对GIF进行讨论,是因为PNG就是为取代GIF而生的,而且PNG的压缩算法也要优于GIF,所以只要不是需要动画效果的地方强烈建议都采用PNG格式图片。 这里我们不妨把JPG和PNG的一些特性进行一个简单对比:

    BMP转换jpg.gif.png

    "BMP转换jpg.gif.png"这个主题聚焦于三种常见的图像格式:BMP(Bitmap)、JPEG(Joint Photographic Experts Group)和PNG(Portable Network Graphics),以及它们之间的转换。 BMP是一种无损图像格式,由微软开发...

    图片转换工具jpg .jpeg .gif .png .bmp图片格式

    图片转换工具 jpg .jpeg .gif .png .bmp图片格式 图片格式转换器 格式PNG、JPG、GIF、BMP、tiff互相转换工具

    最好的GIF,JPG,PNG批量修改大小尺寸压缩图片的工具集共5个

    "最好的GIF,JPG,PNG批量修改大小尺寸压缩图片的工具集共5个"这个资源提供了高效解决方案,帮助用户快速优化这些常见格式的图片,以适应不同的应用场景。 1. **GIF** 格式:GIF是一种支持动画的图像格式,广泛用于...

    如何将jpg,png,gif图片变为WebP图片.zip

    - 在线转换工具:如TinyPNG、Convertio等网站提供在线图片格式转换服务,包括从jpg、png、gif转换为WebP。 - 开源命令行工具:如`cwebp`(从命令行将图像转换为WebP)和`dwebp`(将WebP转换回其他格式)是Google...

    QT基于C语言读图片的宽高,支持gif、bmp、jpg、png

    QT基于C语言读图片的宽高,支持gif、bmp、jpg、png,分数最高只能这么多,有点少了

    VC图像显示(BMP/JPG/PNG/GIF)

    在VC++编程环境中,显示BMP、JPG、PNG和GIF等常见图像格式是常见的需求,尤其是在开发图形用户界面的应用程序时。本教程将详细讲解如何在VC++(这里特指VC++ 2010)中使用PictureControl控件来实现这些图像的显示,...

    VC下加载_JPG_JPEG__GIF_PNG_图片最简单的方法.txt

    ### VC 下加载 JPG/JPEG/GIF/PNG 图片最简单的方法 在Visual C++ (VC) 开发环境中处理图像时,经常会遇到需要加载各种格式图片(如 JPG、JPEG、GIF 和 PNG)的需求。本文将详细介绍如何在 VC 下简单有效地加载这些...

    图像处理,JPG GIF BMP文件显示,WEB常用图像格式文件(gif,jpg,png)处理开发包 dll

    总之,"图像处理,JPG GIF BMP文件显示,WEB常用图像格式文件(gif,jpg,png)处理开发包dll" 提供了一套全面的工具,便于开发者处理和管理Web上常见的图像格式。通过熟练运用DLL,开发者可以高效地实现图像加载、显示...

    bmp,jpg,png,gif图像相互转换

    本文将深入探讨bmp、jpg、png和gif这四种常见图像格式,以及如何实现它们之间的相互转换。 1. BMP(Bitmap)格式: BMP是一种无损的位图格式,不进行任何压缩,因此文件体积通常较大。它保存了图像的所有细节,...

    VC 下加载 JPG JPEG GIF PNG 图片最简单的方法.doc

    VC++ 图像加载技术 在 VC++ 中,加载图片是一项基本操作,但是在加载非 BMP 格式的图片时,却...* 使用 CImage 类可以取得图片的 HBITMAP 句柄,从而可以像操作 BMP 图片一样处理 JPG、JPEG、GIF、PNG 格式的图片。

    wpf把xaml保存成gif png 或者 jpg

    当你有一个由XAML定义的WPF UI,并希望将其保存为图像文件,如GIF、PNG或JPG,你需要执行一系列步骤来实现这个目标。这里我们将详细介绍如何完成这一过程。 首先,我们需要理解XAML到图像转换的基本原理。XAML描述...

    实现GIF/JPG/PNG文件显示保存程序

    程序可以显示并保持GIF、JPG、PNG格式的文件,附带源代码,绝对值得研究

    图片(JPG、PNG、GIF、BMP、JPEG)转pdf

    本文将详细介绍如何将JPG、PNG、GIF、BMP、JPEG等常见图片格式转换为PDF文件。 首先,我们来了解这些图片格式的特点: 1. **JPG (Joint Photographic Experts Group)**:这是一种广泛使用的有损压缩格式,适用于...

    (c++) 截屏 保存为 .gif, .png, .jpg

    因工作需要, 开发一个 dll, 支持全屏截图. 可以根据参数的传递保存为多种格式. dll 功能可以根据需要自行...myFunc("C:\\MyCapture", ".png"); myFunc("C:\\MyCapture1", ".gif"); myFunc("C:\\MyCapture2", ".jpg");

Global site tag (gtag.js) - Google Analytics