在前端工作久了经常会遇到各种格式的图片文件,现文做一些区别总结,帮助理解但不深入。

【PNG】(Portable Network Graphics)

PNG是一种无损压缩的位图图形格式,主要有PNG8、PNG24、PNG32三种格式,主要区别如下:

PNG8)8位PNG,最大支持2的8次方=256色,支持256阶alpha透明,支持索引色透明

PNG24)24位PNG,最大支持2的24次方>1600万色,不支持256阶alpha透明和索引色透明

PNG32)32位PNG,最大支持2的24次方>1600万色,在PNG24的基础上补了8位,用于支持256阶alpha透明,不支持索引色透明

【JPEG】(Joint Photographic Experts Group)

JPG的文件格式是JPEG,由于早期系统文件扩展名只支持3个字符,所以简写成了JPG,由于养成了习惯,JPG比JPEG更流行,本质没有区别。

JPEG不能存储透明信息。

JPEG的压缩标准可分为标准JPEG、渐进式JPEG及JPEG2000三种,主要区别如下:

标准JPEG)以24位存储颜色的格式。展现方式为由上而下依次加载图片,直到图片全部加载完成,才能看到完整的图片。支持压缩,但可能有损耗。

渐进式JPEG)标准JPEG的改良格式。展现方式为交错加载图片,先呈现模糊外观,等到全部加载完再显示完整的原图。

JPEG2000)新一代压缩品质更好的格式。 展现方式为渐进加载图片,先传输图片轮廓呈现模糊外观,再渐渐的显示出清晰的原图。 压缩率比标准JPEG高约30%,支持无损和有损压缩。

【BMP】(Bitmap-File)

BMP格式没有压缩像素格式。

BMP不能存储透明信息。

BMP存储在文件中时先有文件头、再图像头、后面就都是像素数据了,上下颠倒存储。

文件头)大小为14B,提供文件的格式、大小等信息

信息头)大小为40B,提供图像数据的尺寸、位平面数、压缩方式、颜色索引等信息

调色板)大小由biBitCount决定,可选,如使用索引来表示图像,调色板就是索引与其对应的颜色的映射表

位图数据)大小由图片大小和颜色定,图像数据区

biBitCount=1时,可存储2的1次方=2色;

biBitCount=4时,可存储2的4次方=16色;

biBitCount=8时,可存储2的8次方=256色;

biBitCount=24时,可存储2的24次方>1600万色;

【GIF】(Graphics Interchange Format)

GIF是一种图像交换格式。

GIF支持在一个GIF文件中存放多幅彩色图像,并且可以按照一定的顺序和时间间隔将多幅图像依次读出并显示在屏幕上,这样就可以形成一种简单的动画效果。尽管GIF最多只支持256色,但是由于它具有极佳的压缩效率并且可以做成动画而早已被广泛接纳采用。

GIF图像文件是以块的形式来存储图像信息,其中的块又称为区域结构。按照其中块的特征又可以将所有的块分成三大类:

控制块)主要包括文件头信息、逻辑屏幕描述块、图像控制扩充块、文件结尾块

图像描述块)主要包括图像描述块、全局调色板、局部调色板、图像压缩数据、图像说明扩充块

特殊用途块)主要包括图像注释扩充块、应用程序扩充块

常见图片格式PNG,JPEG,BMP,GIF区别总结的更多相关文章

  1. c语言_常见图片格式判断

    c语言_常见图片格式判断 我想尽各种思路.今天,终于把图片判断搞定了. 在此,我写一下我的思路.希望对那些不想看代码的朋友们有帮助. 常风的的图片格式有:bmp,png,jpg,gif等图片格式. 我 ...

  2. Web上的支持的图片格式以及它们之间的区别

    一.GIF(图形交换格式) GIF格式的图片最多只能保存256中颜色,该格式支持透明色,支持动画效果. 二.JPEG(联合图像专家组) JPEG格式不支持透明色及动画,颜色可达1670种. 三.PNG ...

  3. BMP图片格式

    BMP图片 BMP采用位映射存储格式,除了图像深度可选以外,不采用其他任何压缩,因此,BMP文件所占用的空间很大.BMP文件的图像深度可选lbit.4bit.8bit及24bit和32bit.BMP文 ...

  4. PHP验证是否为图片格式文件

    /** * 判断是否为图片格式(jpg/jpeg/gif/png)文件 * * @param string $filePath * @return bool|string */ function is ...

  5. WebP图片格式

    腾讯科技讯 科技博客Gig‍‍‍aOM近日撰文称,谷歌(微博)试图让WebP图片格式取代JPEG等现有图片格式.虽然谷歌无法很快达成所愿,但WebP仍然会对互联网产生重大影响. 文章全文如下: 受够了 ...

  6. PNG,JPEG,BMP,JIF图片格式详解及其对比

    原文地址:http://blog.csdn.net/u012611878/article/details/52215985 图片格式详解 不知道大家有没有注意过网页里,手机里,平板里的图片,事实上,图 ...

  7. BMP、GIF、JPEG、PNG以及其它图片格式简单介绍

    版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/songjinshi/article/details/37516649 BMP格式 BMP是英文Bit ...

  8. png、jpg、gif三种图片格式的区别

    png.jpg.gif三种图片格式的区别   2014-06-17 为什么想整理这方面的类容,我觉得就像油画家要了解他的颜料和画布.雕塑家要了解他的石材一样,作为网页设计师也应该对图片格式的特性有一定 ...

  9. mp3 音频 音乐 tag ID3 ID3V1 ID3V2 标签 读取信息 获得图片 jpeg bmp 图片转换等

    mp3 音频 音乐 tag ID3 ID3V1 ID3V2 标签 读取信息 获得图片 jpeg bmp 图片转换(上) MP3文件格式(二)---ID3v2 图:ID3V1标签结构 图:ID3V2标签 ...

随机推荐

  1. 用R语言做数据清理

    数据的清理 如同列夫托尔斯泰所说的那样:“幸福的家庭都是相似的,不幸的家庭各有各的不幸”,糟糕的恶心的数据各有各的糟糕之处,好的数据集都是相似的.一份好的,干净而整洁的数据至少包括以下几个要素: 1. ...

  2. aop(execution()表达式)

    execution(* com.tp.soft.service..*.*(..)) 整个表达式可以分为五个部分: 1.execution(): 表达式主体. 2.第一个*号:表示返回类型,*号表示所有 ...

  3. 第一章 Java语言概述1

    1.人机交互有两种方法:一种是图形化界面,一种是命令行方式 2.如何打开命令行:开始-在运行命令行中输入cmd 3.常用的DOS命令: dir(directory):列出当前目录下文件及文件夹 md( ...

  4. Java程序设计的第二次作业

    本次作业包含两个部分:一是以下4个题目的程序源码和运行结果截图:二是本次作业的小结(谈谈你在做作业的过程中遇到了哪些问题,如何解决,有哪些收获). 1.编写“人”类及其测试类.1.1 “人”类: 类 ...

  5. 使用pyinstaller打包多个py文件为一个EXE文件

    1. 安装pyinstaller. pip install pyinstaller !!!!64位win7上打包后始终不能用,提示找不到ldap模块,换了32位win7就好了.!!!!(代码中涉及ld ...

  6. ROM、RAM、CPU、CACHE、FLASH

    内存在电脑中起着举足轻重的作用.内存一般采用半导体存储单元,包括随机存储器(RAM),只读存储器(ROM),以及高速缓存(CACHE).只不过因为RAM是其中最重要的存储器,所以通常所说的内存即指电脑 ...

  7. Eggjs 设置跨域请求

    1. 安装egg-cors npm install egg-cors --save 2.打开config/plugin.js exports.cors: { enable: true, package ...

  8. 一个axios的简单教程

    转载于:https://www.jianshu.com/p/13cf01cdb81f 转载仅供个人学习 首先要明白的是axios是什么:axios是基于promise(诺言)用于浏览器和node.js ...

  9. C++函数指针与指针函数干货

    C++要是不常用,相信过四天你的指针函数与函数指针的概念就该忘个精光. 其实只要记住谁在后面谁就是哪个本质. 先了解下指针数组与数组指针吧 数组指针 就是指向数组的指针,它表示的是一个指针,它指向的是 ...

  10. C语言课设——电影院选票系统

    C语言课设--电影院选票系统 1.课题介绍 大家都爱看电影,现请参考一个熟悉电影票预订系统,实现C语言版的订票系统.了解订票如何实现的.系统主要有2类用户:管理员用户和顾客用户. 管理员用户 1.电影 ...