趣达 发表于 2015-8-19 17:18:52

UI设计中的PNG格式差距与使用技巧

       Png是图像文件存储格式,在网页设计 中已经不是一个陌生的名词,在前端开发中经常使用到它,如常用CSS 雪碧图。而Png的使用不仅仅如此,Png有多少种格式,有哪些特点,PC端中常用的Png格式是哪些,手机端最合适的Png格式是什么呢?如果你对这些问题有疑问,那么很开心的告诉你,这里有你需要的答案。

PNG的格式和透明度       这个Fireworks会比较清楚,打开Fireworkd优化面板,可以清楚看到png有3种不同深度的格式:png8、png24、png32。http://www.qduck.cn/forum.php?mod=image&aid=7269&size=300x300&key=775e0234a2975e73&nocache=yes&type=fixnone       其中,在优化面板选择png8,可发现png8包括不透明、索引色透明、alpha透明3种格式。http://www.qduck.cn/forum.php?mod=image&aid=7270&size=300x300&key=0e2ecc5409da18df&nocache=yes&type=fixnonePNG8       8位的png最多支持256(2的8次方)种颜色,8位的png其实8支持不透明、索引透明、alpha透明。PNG24       支持2的24次方种颜色,表现为不透明。PNG32       支持2的32次方种颜色,32位是我们最常使用的格式,它是在png在24位的png基础上增加了8位的透明信息,支持不同程度的半透效果。
       其实PNG8的3种格式不透明、索引透明、alpha透明,正好把png的所有格式都归类好了:       • 『png 不透明』格式       • 『png 索引透明』格式       • 『png alpha透明』格式『PNG 不透明』格式       说到不透明,就像jpg格式一样,『png 不透明』只能为不透明,代表格式有:『png8 不透明』和『png24』,导出软件有:Photoshop、Fireworks。不推荐使用『png 不透明』格式,建议用jpg图片来代替它。       可能会有同学会问为什么png24是不透明的,我使用photoshop导出来的就是png24啊?       Png24实际为不透明图片       打开photoshop,任意打开一个带透明的psd文件,存储为web所有格式(ctrl+shift+alt+s),如下面板所示:http://www.qduck.cn/forum.php?mod=image&aid=7271&size=300x300&key=3826c998254fb6fa&nocache=yes&type=fixnone       不勾选透明度单选框,图片的透明背景会被默认的白色填充http://www.qduck.cn/forum.php?mod=image&aid=7272&size=300x300&key=73c8cfdcb426104c&nocache=yes&type=fixnone       导出来的png图片深度为24位,图片为不透明,表现跟jpg图片相似http://www.qduck.cn/forum.php?mod=image&aid=7273&size=300x300&key=ff8c68a144ffb67e&nocache=yes&type=fixnone       如果勾选了透明度(alpha通道),导出深度为32位的透明图片http://www.qduck.cn/forum.php?mod=image&aid=7274&size=300x300&key=2f73a107e065975c&nocache=yes&type=fixnone       从photoshop存储为web所有格式面板中这样理解,png24深度其实为24位,再勾选上8位的alhpa通道,24+8=32,即『png32』 = 『png24+alpha』,这也许是photoshop软件开发者不添加png32位格式的原因,下图为Photoshop存储为web所有格式界面的图片格式选择,并没有png32位的选项~http://www.qduck.cn/forum.php?mod=image&aid=7275&size=300x300&key=2fd68e5dad665e15&nocache=yes&type=fixnone『PNG 索引透明』格式       说到索引颜色透明,我们可以了解下什么是索引颜色,『png 索引透明』代表格式有『png8 索引透明』,导出软件有:Photoshop、Fireworks,它的特点总结如下:       • 挑选一副图片中最有代表性的若干种颜色(通常不超过256种)       • 只能为不透明或全透明       • 文件体积小       • 带有杂边锯齿       • 支持IE6如何使用Photoshop导出『png8 索引透明』       使用Photoshop,存储为web所有格式,按照如下图片的红色边框配置,可导出png8索引透明       注:使用Photoshop导出『png8 索引透明』的效果比Fireworks导出的效果良好,这里不介绍使用Fireworks导出『png8 索引透明』http://www.qduck.cn/forum.php?mod=image&aid=7276&size=300x300&key=334b08c913918621&nocache=yes&type=fixnone『png8 索引透明』产生杂边锯齿原因       『png8 索引透明』只有透明索引颜色,没有半透明索引颜色,下图左侧为带半透明像素的图片,在浏览器中打开不会有锯齿,而右侧图片为全透明或不透明的像素,在浏览器打开后有锯齿。http://www.qduck.cn/forum.php?mod=image&aid=7277&size=300x300&key=d3296822e0a453b9&nocache=yes&type=fixnone       由于『png8 索引透明』没有半透明索引颜色,使用Photoshop导出时,原有的半透明转化为不透明,从而产生锯齿。http://www.qduck.cn/forum.php?mod=image&aid=7278&size=300x300&key=505109819e80d98c&nocache=yes&type=fixnone如何避免『png8 索引透明』的杂边锯齿
       方法:设置杂边与背景色颜色一致可达到视觉上透明。       相信不难理解,利用杂边与背景色一致,可以来满足视觉上的透明,缺点是只能适应一种背景色,在其它背景色下同样会产生杂边。http://www.qduck.cn/forum.php?mod=image&aid=7279&size=300x300&key=8de7a94e3b62ae81&nocache=yes&type=fixnonehttp://www.qduck.cn/forum.php?mod=image&aid=7280&size=300x300&key=81eb1768149ee816&nocache=yes&type=fixnone       怎么设置呢,打开Photoshop,在存储为web格式面板中进行如下操作,在杂边选项中选择与背景色一致的颜色。http://www.qduck.cn/forum.php?mod=image&aid=7281&size=300x300&key=5a70af2236628868&nocache=yes&type=fixnone『PNG Alpha透明』格式       说到alpha透明,我们可以了解下什么是alpha通道,『png alpha透明』代表格式有『png8 alpha透明』和『png32』,导出软件有Fireworks,它的特点总结如下:       • 一个8位的灰度通道,该通道用256级灰度来记录图像中的透明度信息,定义透明、不透明和半透明区域       • 支持全透明和半透明       • 『Png8 alpha透明』文件体积小       • 『Png8 alpha透明』在IE6下有毛边如何使用Fireworks导出『png8 alpha透明』       Firewoks中,在优化面板,按照如下图片的红色边框配置,可导出png8 alpha透明。       注:Firewoks支持导出『png8 alpha透明』,Photoshop不支持导出『png8 alpha透明』http://www.qduck.cn/forum.php?mod=image&aid=7282&size=300x300&key=0e868cf190796b3c&nocache=yes&type=fixnonehttp://www.qduck.cn/forum.php?mod=image&aid=7283&size=300x300&key=4b90cdfdcd209008&nocache=yes&type=fixnone手机端选择哪种Png       说到手机,考虑流量的问题是必不可少的,所选png需要满足体积小和视觉效果良好,那么哪种png格式符合这2个要求呢?做个实验吧~       不同Png格式测试       测试平台:ios&android webkit浏览器       测试图片:彩种雪碧图1230*82http://www.qduck.cn/forum.php?mod=image&aid=7284&size=300x300&key=9eda0cfd6bfaeb10&nocache=yes&type=fixnone       测试内容:同一张雪碧图导出不同png格式的大小、透明度、杂边以及在retina显示屏和普通显示屏下的对比       测试结果:http://www.qduck.cn/forum.php?mod=image&aid=7285&size=300x300&key=599f913257d2c6ac&nocache=yes&type=fixnone       从上图可见png32和png24体积太大了,十分消耗手机用户流量,不是我们选择的范围,那么可以锁定目标在『png8 alpha透明』和『png8 索引透明』中,2者对比,可以看出『png8 alpha』在手机端的支持是良好,可能有童鞋会认为,单凭一张图片也不能下结论~       而经过笔者使用多张雪碧图测试后使用Fireworks导出的『png8 alpha』,在手机端的支持是比较好的~不仅文件体积小,节省流量,而且半透明效果良好。       于是,移动端采用『Png8 alpha透明』,相信『Png8 alpha透明』是未来的一种趋势~PC端选择哪种Png       PC端使用哪种png,其实这个话题很早就有结论了,这里简单介绍下。       使用png8的方案:       使用photoshop打开雪碧图,分别导出一张png32和一张『png8 索引透明』的图片,高级浏览器使用png32位图片,针对IE6使用『png8 索引透明』,并设置『png8 索引透明』杂边与背景色颜色一致可达到视觉上透明       注:为啥使用png32而不使用『png8 alpha透明』?因为pc端的网速大多良好,建议使用表现更佳的png图片,显然png32是最合适的,当然你也可以使用『png8 alpha透明』,但是在高清显示器下的质量不如png32http://www.qduck.cn/forum.php?mod=image&aid=7286&size=300x300&key=0a38b6cb279edc22&nocache=yes&type=fixnone       .bg{ background:url(global.png?v=20130530) no-repeat; _background:url(global_png8.png?v=20130530) no-repeat;//IE6使用的背景图 }       使用IE滤镜的方案:       比较耗性能,而且存在不支持背景平铺,导致链接失效等缺点,不推荐该方案,不要为了IE而把自己搞得像IE~       .bg{filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src=”img. png”, sizingMethod=”scale”);}       另外还有js和打补丁的办法,这里不做介绍,大家有兴趣可以百度下:IE6支持png24Png的格式、颜色种类、位数、透明度、浏览器支持一览http://www.qduck.cn/forum.php?mod=image&aid=7287&size=300x300&key=4b300c670c708cfa&nocache=yes&type=fixnone
设计免费学习关注微信:qduckcn
UI设计学习区


对平面设计 网页设计 UI设计美术手绘 感兴趣的,可以到群   186828000一起学习


张静雅 发表于 2015-8-22 10:52:36

晕 在我帖里面找偶像啊??

空白协议书 发表于 2015-8-23 20:01:19

不错,感谢楼主发帖,必须回复啊!

鱼好飞人育风 发表于 2015-8-23 21:25:15

挨骂也是幸福~~~

肉肉肉肉肉肉 发表于 2015-8-24 11:56:57

我也是坐沙发的

彩叶草 发表于 2015-8-24 13:12:14

能告诉我丫挺什么意思吗?赐教

贱出风格 发表于 2015-8-24 15:12:06

能告诉我丫挺什么意思吗?赐教

泡面可乐 发表于 2015-8-24 15:36:17

我也是坐沙发的

椒盐麻雀 发表于 2015-8-24 16:05:02

我也是坐沙发的
页: [1]
查看完整版本: UI设计中的PNG格式差距与使用技巧