关于png格式的一点说明网页设计 -电脑资料

电脑资料 时间:2019-01-01 我要投稿
【www.unjs.com - 电脑资料】

    如果我问你png是什么、有什么特点,你会如何回答?我听到的最多的答案就是png是一种包含半透明格式的图片,

关于png格式的一点说明网页设计

。其实这是很不全面的理解。不知道你是否注意到,当我们使用PS存WEB格式的PNG时,会有二种格式的Png供你选择:png8、png24,你知道它们到底有什么区别么?

    我在网上也看过别人的提问以及好多人对png的理解,有些朋友认为他们的区别是颜色位深的不同。而在我的理解中两种模式的根本区别:是因存储方式不同导致的图像显示不一样。

    我们先找png的存储格式来看一下:

    关键数据块中有4个标准数据块:

文件头数据块IHDR(header chunk):包含有图像基本信息,作为第一个数据块出现并只出现一次。

调色板数据块PLTE(palette chunk):必须放在图像数据块之前。

图像数据块IDAT(image data chunk):存储实际图像数据。PNG数据允许包含多个连续的图像数据块。

图像结束数据IEND(image trailer chunk):放在文件尾部,表示PNG数据流结束。

    在第二个数据块中包含了调色板数据块。可是,当我们去解析png24时,却未找到调色板、并且我们发现png24的存储模式是点阵颜色值加一位的阿尔法通道值构成的,这种存储模式根本不需要调色板的存在。基于这种存储模式,png24的位深最低是32位真彩,在我们看到的图像过渡中会很圆润,因为每个点都可以是不同的色彩以及不同的透明值。而这种模式也是我们最常使用、大家所理解中的png模式。至于"png"后面的“24”可见也和位深并无关系,至于为什么叫24,我也没有找到具体的答案。

    png24源数据中无调色盘的存在,而在标准数据块的第二块中,却显示了调色板数据块,

电脑资料

关于png格式的一点说明网页设计》(https://www.unjs.com)。即然存在,肯定是有意义的,可见png有另外一种存储模式--带色盘的png8模式。png8有点类似于GIF,包含了一个调色板,并在调色板上有一个透明颜色值,这种模式在计算机的存储中,每个点阵存储的是色盘索引、并且无阿尔法半透明位。所以,png8在颜色位深上,可以低于32位;也可以使用更换色盘的技术来处理一些独特的效果;但是由于每个点阵没有阿尔法定义,边缘会像GIF一样存在锯齿现像。

    好像讲的有点乱,总结一下区别吧

png8和png24的根本区别,不是颜色位的区别,而是存储方式不同;

png8 色盘索引、调色板中一位透明值、不支持阿尔法通道的半透明,存储格式中每个像素无透明度的数据块定义;

png24 无调色板、支持阿尔法通道的半透明、每个点阵都有透明度的定义,最低32位真彩色;

    特性

支持256色调色板技术以产生小体积文件

最高支持48位真彩色图像以及16位灰度图像。

支持阿尔法通道的半透明特性。

支持图像亮度的gamma校正信息。

支持存储附加文本信息,以保留图像名称、作者、版权、创作时间、注释等信息。

使用无损压缩

渐近显示和流式读写,适合在网络传输中快速显示预览效果后再展示全貌。

使用CRC循环冗余编码防止文件出错。

最新的PNG标准允许在一个文件内存储多幅图像。

    本文来自:http://lylmsdn.blog.163.com/blog/static/241852832009313101238813/

免费领课

    如果我问你png是什么、有什么特点,你会如何回答?我听到的最多的答案就是png是一种包含半透明格式的图片,

关于png格式的一点说明网页设计

。其实这是很不全面的理解。不知道你是否注意到,当我们使用PS存WEB格式的PNG时,会有二种格式的Png供你选择:png8、png24,你知道它们到底有什么区别么?

    我在网上也看过别人的提问以及好多人对png的理解,有些朋友认为他们的区别是颜色位深的不同。而在我的理解中两种模式的根本区别:是因存储方式不同导致的图像显示不一样。

    我们先找png的存储格式来看一下:

    关键数据块中有4个标准数据块:

文件头数据块IHDR(header chunk):包含有图像基本信息,作为第一个数据块出现并只出现一次。

调色板数据块PLTE(palette chunk):必须放在图像数据块之前。

图像数据块IDAT(image data chunk):存储实际图像数据。PNG数据允许包含多个连续的图像数据块。

图像结束数据IEND(image trailer chunk):放在文件尾部,表示PNG数据流结束。

    在第二个数据块中包含了调色板数据块。可是,当我们去解析png24时,却未找到调色板、并且我们发现png24的存储模式是点阵颜色值加一位的阿尔法通道值构成的,这种存储模式根本不需要调色板的存在。基于这种存储模式,png24的位深最低是32位真彩,在我们看到的图像过渡中会很圆润,因为每个点都可以是不同的色彩以及不同的透明值。而这种模式也是我们最常使用、大家所理解中的png模式。至于"png"后面的“24”可见也和位深并无关系,至于为什么叫24,我也没有找到具体的答案。

    png24源数据中无调色盘的存在,而在标准数据块的第二块中,却显示了调色板数据块,

电脑资料

关于png格式的一点说明网页设计》(https://www.unjs.com)。即然存在,肯定是有意义的,可见png有另外一种存储模式--带色盘的png8模式。png8有点类似于GIF,包含了一个调色板,并在调色板上有一个透明颜色值,这种模式在计算机的存储中,每个点阵存储的是色盘索引、并且无阿尔法半透明位。所以,png8在颜色位深上,可以低于32位;也可以使用更换色盘的技术来处理一些独特的效果;但是由于每个点阵没有阿尔法定义,边缘会像GIF一样存在锯齿现像。

    好像讲的有点乱,总结一下区别吧

png8和png24的根本区别,不是颜色位的区别,而是存储方式不同;

png8 色盘索引、调色板中一位透明值、不支持阿尔法通道的半透明,存储格式中每个像素无透明度的数据块定义;

png24 无调色板、支持阿尔法通道的半透明、每个点阵都有透明度的定义,最低32位真彩色;

    特性

支持256色调色板技术以产生小体积文件

最高支持48位真彩色图像以及16位灰度图像。

支持阿尔法通道的半透明特性。

支持图像亮度的gamma校正信息。

支持存储附加文本信息,以保留图像名称、作者、版权、创作时间、注释等信息。

使用无损压缩

渐近显示和流式读写,适合在网络传输中快速显示预览效果后再展示全貌。

使用CRC循环冗余编码防止文件出错。

最新的PNG标准允许在一个文件内存储多幅图像。

    本文来自:http://lylmsdn.blog.163.com/blog/static/241852832009313101238813/