谈谈web上各种图片应用的优缺点
web中承载信息的主要方式就是图片与文字了,以下就是对一些web图片格式的优缺点进行归纳。
1、GIF
GIF图是比较古老的web图片格式之一,可以追溯到1987,几乎所有的浏览器都支持这一种格式,老有老的好处嘛。GIF是一种索引色模式图片,所以GIF每帧图所表现的颜色最多为256种。GIF能够支持动画,也能支持背景透明,这点连古老的IE6都支持,所以在以前想要在项目中使用背景透明图片,有一些方案就是生成GIF图片。GIF与JPEG、PNG相比,在通常情况下确实体积比较小。不过里面如果放入了足够多帧的图片,那么可能就不是那种情况了。现在网络上的GIF可以说是爆炸式的再增长,显然更多的在与他的两个特点:支持动画与兼容性好。缺点就是:色彩表现度不够丰富。
2、JPEG、JPG
平常我们大部分见到的静态图基本都是这种图片格式。这种格式的图片能比较好的表现各种色彩,主要在压缩的时候会有所失真(主要是压缩时,会在细节上把相邻的一些色彩给同化掉),也正因为如此,造就了这种图片格式体积的轻量。格式被各中老弱病残的浏览器兼容,不过不支持背景透明与动画。平时web上的广告图、相片、特大背景图、轮播图等等一些大图场景中,都适用这个。
3、PNG
PNG格式是有三种版本的,分别为PNG-8,PNG-24,PNG-32,所有这些版本都不支持动画的。PNG-8跟GIF类似的属性是相似的,都是索引色模式,而且都支持背景透明。相对比GIF格式好的特点在与背景透明时,图像边缘没有什么噪点,颜色表现更优秀。PNG-24其实就是无损压缩的JPEG。而PNG-32就是在PNG-24的基础上,增加了透明度的支持。PNG格式在老浏览器IE6以及以下,PNG-8透明度的支持度不是很好,PNG-32的透明度基本不支持。正因为如此,以前有一个js插件,专门应对IE6这种BUG,主要是用IE6里的滤镜来重新渲染图片达到透明.随着时代的发展,PNG也想进步,也想支持动画。所以,有人推出了APNG(Animated PNG)格式图片。从字面上理解,就是会动的PNG图片,不过这个技术实现上与PNG开发小组理念不合,没有得到有效推广。到现在,也就有Blink内核的浏览器(代表浏览器:火狐)有比较好的支持,其它的就无从谈起了。
4、webP
这个格式的图片的格式是财大气粗的Google在2010发布出来的,它拥有现有位图格式的所有优点,包括体积小、色彩表现足够、支持动画(一开始是不支持的)。当然,新东西的缺点就是兼容性不是很好,还有就是呈现这种图片格式计算量比平常的图片要大很多。由于出生好,东西本身也不错,越来越多的开发者与设计者开始关注它。国内某家公司也在使用这种格式图片制作表情。
5、SVG
SVG是一种矢量图,在现在来说,得到的支持是很可观的。矢量图比位图一个天生的有点,就是它不管放多大都不会模糊。这种格式的图片,对一些简单的线条、 形状表现是很不错的,如果表达更复杂的图像(如照片),那这个就会变的太复杂。SVG能够支持动画(SVG的动画特性不能被IE浏览器很好的支持),以前的flash那样,还支持css样式的一些修改。我们现在网页上的很多icon图标都是使用这个的,svg也能够把多个SVG组合起来。总体来说,SVG还是一个比较看好的技术。
浏览器中,对于图片的技术更新一直突破,其较于文字来说唯一缺点就是体积太大,但图片的表现力是文字无法比拟的,也相信图片会越来越好吧。关于web上位图的技术还有一个是base64,这个是可以把的图片转化成为16位的代码直接插入web中。
| 压缩方式 | 单张图能支持颜色种类 | 是否支持透明度 | 是否支持动画 | 兼容情况 | |
| GIF | 无损压缩 | 256 | 是 | 是 | 基本通用 |
| JPEG | 有损压缩 | 1600万以上 | 否 | 否 | 基本通用 |
| PNG | 无损压缩 | 1600万以上 | 是 | 否 | 基本通用 |
| APNG | 无损压缩 | 1600万以上 | 是 | 是 |
Firefox51++ Chrom59++ iOS Sarfi9.3++ |
| webP | 有损压缩 | 1600万以上 | 是 | 是 |
Opera 44++ Chrom 45++ |
| SVG | 矢量图 | 1600万以上 | 是 | 是 |
除了IE8以及以下, 现在各主浏览器都支持 |
谈谈web上各种图片应用的优缺点的更多相关文章
- 谈谈web上种图片应用的优缺点
web中承载信息的主要方式就是图片与文字了,以下就是对一些web图片格式的优缺点进行归纳. 1.GIF GIF图是比较古老的web图片格式之一,可以追溯到1987,几乎所有的浏览器都支持这一种格式,老 ...
- 关于web上的图片格式问题,新的彩蛋
我们耳熟能详的几种格式无外乎 png-8,png-24,jpeg,gif,svg. 但是上面的那些都不是能够另人惊喜的答案.关于新技术的是Webp,Apng.(是否有关注新技术,新鲜事物) 1)Web ...
- web 上读取图片,并转化为指定格式
一. 转换为 base64 public static string ObtainBase64FromWeb(string domain, string path) { string url = &q ...
- 基于emoji 国际通用表情在web上的输入与显示的记录
定义: emoji 即国际通用表情 场景: 1,ios,android,wp上emoji表情输入与显示 2,web也需作为支撑平台对emoji表情就行输入与显示(解析) 问题: 1,app端输入的表情 ...
- 我需要在Web上完成一个图片上传的功能
我需要在Web上完成一个图片上传的功能. 这个页面需要能从手机中选择图片上传. 首先,这个页面是从微信上面触发的,所以修改了微信的的入口地址,增加了身份识别号作为传参. 跳转到页面的时候,页面先检查身 ...
- web响应式图片设计实现
.header { cursor: pointer } p { margin: 3px 6px } th { background: lightblue; width: 20% } table { t ...
- AS与.net的交互——加载web上的xml
最近搞了个私活,需要用as去加载一个网站的xml,不过本人as也不咋滴,就去看看怎么玩,看完之后也蛮简单的. 由于业务上比较复杂,就随便说个小例子吧. 很多时候,为了页面区域更加灵活,生动,有吸引力, ...
- 实现Web上的用户登录功能
关于如何实现web上的自动登录功能 文章来源http://coolshell.cn/articles/5353.html Web上的用户登录功能应该是最基本的功能了,可是在我看过一些站点的用户登录功能 ...
- web开发常用图片格式
web开发常用图片格式有:gif jpg/jpeg png gif:图片压缩率高,可以显示动画,但是只能显示256色,可能造成颜色丢失. jpg:图片压缩率高(有损压缩),可以用小文件来显示 ...
随机推荐
- navicat连接linux系统中mysql-错误:10038
输入 命令 netstat -anp(查看所有的进程和端口使用情况) (注:Local Address一列中: 0.0.0.0 表示监听本地所有ip地址,其他电脑是可以访问的,并且修改ip不受影响. ...
- sudo rm -rf iTunes.app Operation not permitted
https://www.howtogeek.com/230424/how-to-disable-system-integrity-protection-on-a-mac-and-why-you-sho ...
- Android Studio在项目中添加assets资源目录
第一步: 切换到"Project"视图,找到app --> src --> main目录 第二步: 右键点击main目录,New --> Directory -- ...
- 使用Ansible实现数据中心自动化运维管理
长久以来,IT 运维在企业内部一直是个耗人耗力的事情.随着虚拟化的大量应用.私有云.容器的不断普及,数据中心内部的压力愈发增加.传统的自动化工具,往往是面向于数据中心特定的一类对象,例如操作系统.虚拟 ...
- spring boot 集成 Filter 的两种方式
两种方式:(两种方式同时存在时,@Bean优先@ServletComponentScan实例化,生成两个对象) 1)@ServletComponentScan注解+@WebFilter注解 2)@Be ...
- [EXP]Microsoft Windows MSHTML Engine - "Edit" Remote Code Execution
# Exploit Title: Microsoft Windows (CVE-2019-0541) MSHTML Engine "Edit" Remote Code Execut ...
- Java之基础学习(数据类型、运算符、分支语句和循环语句)
在工作用得比较多的是shell和python编程,对于java以前也学习过,使用很少,这次借朋友推荐的java视频教程来温习下. 也是因为现在很多开源测试工具使用java编写的,学习一下更有助于测试工 ...
- myslide 插件开发知识点总结和 css3 动画性能问题的研究
myslide 插件开发知识点总结和 css3 动画性能问题的研究 这篇文章主要是总结最近开发过程中遇到的问题.有几个问题又是不容易发现原因的问题,但是最后的结果又是很简单的. 1.手机端的 slid ...
- [android学习]android_gps定位服务简单实现
前言 gps定位服务的学习是这段时间gps课程的学习内容,之前老师一直在将概念,今天终于是实践课(其实就是给了一个案例,让自己照着敲).不过在照着案列敲了两遍之后,发现老师的案例是在是太老了,并且直接 ...
- LoadRuner12.53教程(三)
教训1:建立一个Vuser Script jiào教 xùn训 1 : jiàn建 lì立 yī一 gè个 V u s e r S c r ...