图片存储类型的种类、特点、区别

BMP 是 DOS 和 Windows 兼容计算机上的标准 Windows 图像格式。BMP 格式支持 RGB、索引颜色灰度和位图颜色模式。可以为图像指定 Windows 或 OS/2® 格式和位深度。对于使用 Windows 格式的 4 位和 8 位图像,还可以指定 RLE 压缩。 BMP 图像通常是自下而上编写出;但您也可以选择“翻转行序”选项,自上而下编写。您还可以点按“高级模式”选择其他编码方法。(“翻转行序”和“高级模式”对于游戏程序员和其他使用 DirectX 的人员而言最有用。)
图形交换格式 (GIF) 是在 World Wide Web 及其他联机服务上常用的一种文件格式,用于显示超文本标记语言 (HTML) 文档中的索引颜色图形和图像。GIF 是一种用 LZW 压缩的格式,目的在于最小化文件大小和电子传输时间。GIF 格式保留索引颜色图像中的透明度,但不支持 Alpha 通道。
联合图片专家组 (JPEG) 格式是在 World Wide Web 及其他联机服务上常用的一种格式,用于显示超文本标记语言 (HTML) 文档中的照片和其他连续色调图像。JPEG 格式支持 CMYK、RGB 和灰度颜色模式,但不支持 Alpha 通道。与 GIF 格式不同,JPEG 保留 RGB 图像中的所有颜色信息,但通过有选择地扔掉数据来压缩文件大小。
JPEG 图像在打开时自动解压缩。压缩级别越高,得到的图像品质越低;压缩级别越低,得到的图像品质越高。在大多数情况下,“最佳”品质选项产生的结果与原图像几乎无分别。
PCX 格式通常用于 IBM PC 兼容计算机。大多数 PC 软件支持 PCX 格式的第 5 版。第 3 版文件使用标准的 VGA 颜色调板,不支持自定颜色调板。
PCX 格式支持 RGB、索引颜色、灰度和位图颜色模式,但不支持 Alpha 通道。PCX 支持 RLE 压缩方法。图像的位深度可以是 1、4、8 或 24。
便携文档格式 (PDF) 是一种灵活的、跨平台、跨应用程序的文件格式。基于 PostScript 成像模型,PDF 文件精确地显示并保留字体、页面版式以及矢量和位图图形。另外,PDF 文件可以包含电子文档搜索和导航功能(如电子链接)。
PICT 格式作为在应用程序之间传递图像的中间文件格式,广泛应用于 Mac OS 图形和页面排版应用程序中。PICT 格式支持具有单个 Alpha 通道的 RGB 图像和不带 Alpha 通道的索引颜色、灰度和位图模式的图像。PICT 格式在压缩包含大面积纯色区域的图像时特别有效。对于包含大面积黑色和白色区域的 Alpha 通道,这种压缩的效果惊人。
以 PICT 格式存储 RGB 图像时,可以选取 16 位或 32 位像素的分辨率。对于灰度图像,可以选取每像素 2 位、4 位或 8 位。在安装了 QuickTime 的 Mac OS 中,有 4 个可用的 JPEG 压缩选项。
Pixar 格式是专为高端图形应用程序(如用于渲染三维图像和动画的应用程序)设计的。Pixar 格式支持具有单个 Alpha 通道的 RGB 和灰度图像。
(Mac OS) PICT 资源是包含在 Mac OS 文件资源派生中的 PICT 文件 ?例如应用程序的启动屏幕或 Scrapbook 的内容。PICT 资源格式支持具有单个 Alpha 通道的 RGB 图像和无 Alpha 通道的索引颜色、灰度和位图模式的图像。
可以使用“导入”命令或“打开”命令打开 PICT 资源。当将文件存储为 PICT 资源时,可以指定资源 ID 和资源名称。与其他 PICT 文件一样,还可以指定位深度和压缩选项。
便携网络图形 (PNG) 格式是作为 GIF 的无专利替代品开发的,用于在 World Wide Web 上无损压缩和显示图像。与 GIF 不同,PNG 支持 24 位图像并产生无锯齿状边缘的背景透明度;但是,某些 Web 浏览器不支持 PNG 图像。PNG 格式支持无 Alpha 通道的 RGB、索引颜色、灰度和位图模式的图像。PNG 保留灰度和 RGB 图像中的透明度。
Raw 格式是一种灵活的文件格式,用于在应用程序与计算机平台之间传递图像。这种格式支持具有 Alpha 通道的 CMYK、RGB 和灰度图像以及无 Alpha 通道的多通道和 Lab 图像。
Raw 格式由一串描述图像中颜色信息的字节构成。每个像素都以二进制格式描述,0 代表黑色,255 代表白色(对于具有 16 位通道的图像,白色值为 65535)。Adobe Photoshop 指定描述图像所需的通道数以及图像中的任何其他通道。可以指定文件扩展名 (Windows)、文件类型 (Mac OS)、文件创作者 (Mac OS) 和标题信息。
在 Mac OS 中,文件类型通常是四个字符的 ID,用于标识文件 - 例如,TEXT 将文件标识为 ASCII文本文件。文件创作者通常也是四个字符的 ID。大部分 Mac OS 应用程序都有向 Apple 注册的唯一文件创作者 ID。计算机开发人员服务组 (Computer Developer Services group)。
Scitex 连续色调 (CT) 格式用于 Scitex 计算机上的高端图像处理。与 Scitex 联系,获得将以 Scitex CT 格式存储的文件传输到 Scitex 系统的实用程序。Scitex CT 格式支持 CMYK、RGB 和灰度图像,但不支持 Alpha 通道。
TGA (Targa®) 格式专门用于使用 Truevision® 视频卡的系统,并且通常受 MS-DOS 色彩应用程序的支持。Targa 格式支持 16 位 RGB 图像(5 位 x 3 种颜色通道,加上一个未使用的位)、24 位 RGB 图像(8 位 x 3 种颜色通道)和 32 位 RGB 图像(8 位 x 3 种颜色通道,加上一个 8 位 Alpha 通道)。Targa 格式也支持无 Alpha 通道的索引颜色和灰度图像。当以这种格式存储 RGB 图像时,可以选取像素深度,并选择使用 RLE 编码来压缩图像。
标记图像文件格式 (TIFF) 用于在应用程序和计算机平台之间交换文件。TIFF 是一种灵活的位图图像格式,受几乎所有的绘画、图像编辑和页面排版应用程序的支持。而且,几乎所有的桌面扫描仪都可以产生 TIFF 图像。
TIFF 格式支持具有 Alpha 通道的 CMYK、RGB、Lab、索引颜色和灰度图像以及无 Alpha 通道的位图模式图像。Photoshop 可以在 TIFF 文件中存储图层;但是,如果在其他应用程序中打开此文件,则只有拼合图像是可见的。Photoshop 也可以用 TIFF 格式存储注释、透明度和多分辨率金字塔数据。

时间: 2024-10-12 04:18:34

图片存储类型的种类、特点、区别的相关文章

编译型语言、解释型语言、静态类型语言、动态类型语言概念与区别

最近在研究Python和Erlang.反复提到动态类型语言.动态语言.解释型语言这些概念.这些概念很生涩,在这里做一个总结. 编译型语言和解释型语言 1.编译型语言 需通过编译器(compiler)将源代码编译成机器码,之后才能执行的语言.一般需经过编译(compile).链接(linker)这两个步骤.编译是把源代码编译成机器码,链接是把各个模块的机器码和依赖库串连起来生成可执行文件. 优点:编译器一般会有预编译的过程对代码进行优化.因为编译只做一次,运行时不需要编译,所以编译型语言的程序执行

JAVA初学(1):值类型和引用类型的区别

JAVA值类型和引用类型的区别(转)                                                          [定义] 引用类型表示你操作的数据是同一个,也就是说当你传一个参数给另一个方法时,你在另一个方法中改变这个变量的值,那么调用这个方法是传入的变量的值也将改变. 值类型表示复制一个当前变量传给方法,当你在这个方法中改变这个变量的值时,最初生命的变量的值不会变.     通俗说法: 值类型就是现金,要用直接用:引用类型是存折,要用还得先去银行取现.-

值类型和引用类型的区别?

1.值类型和引用类型的区别? 1.将一个值类型变量赋给另一个值类型变量时,将复制包含的值.引用类型变量的赋值只复制对对象的引用(快捷方式),而不复制对象本身. 2.值类型不可能派生出新的类型:所有的值类型均隐式派生自 System.ValueType.但与引用类型相同的是,结构也可以实现接口. 3.值类型不可能包含 null 值:然而,可空类型功能允许将 null 赋给值类型. 4.每种值类型均有一个隐式的默认构造函数来初始化该类型的默认值. 2.堆和栈的区别? 栈是编译期间就分配好的内存空间,

C# 值类型和引用类型的区别

C#  值类型和引用类型的区别 1. 值类型的数据存储在内存的栈中:引用类型的数据存储在内存的堆中,而内存单元中只存放堆中对象的地址. 2. 值类型存取速度快,引用类型存取速度慢. 3. 值类型表示实际数据,引用类型表示指向存储在内存堆中的数据的指针或引用 4. 值类型继承自System.ValueType,引用类型继承自System.Object 5. 栈的内存分配是自动释放:而堆在.NET中会有GC来释放 6. 值类型的变量直接存放实际的数据,而引用类型的变量存放的则是数据的地址,即对象的引

C#中值类型和引用类型的区别浅记

C#中值类型和引用类型的区别浅记 在C#中,变量的类型分为两种,分别是值类型和引用类型. 值类型的变量直接存储值,说得更具体一些,就是值类型变量在内存中直接存储它们自身的值,如代码所示, int x = 2: 值类型变量x,在内存中的某处直接存储了它自身的值:2. 引用类型的变量存储的是对其对象的引用,更进一步说,就是引用类型变量在内存中直接存储了一个指向它处的引用,而引用所指的对象则保存在引用类型变量所指的内存中.如代码所示, public class Thing { int x; } Thi

内存角度看c#中值类型和引用类型的区别(转)

1.    值类型的数据存储在内存的栈中:引用类型的数据存储在内存的堆中,而内存单元中只存放堆中对象的地址. 2.     值类型存取速度快,引用类型存取速度慢. 3.     值类型表示实际数据,引用类型表示指向存储在内存堆中的数据的指针或引用 4.     值类型继承自System.ValueType,引用类型继承自System.Object 5.     栈的内存分配是自动释放:而堆在.NET中会有GC来释放 6.      值类型的变量直接存放实际的数据,而引用类型的变量存放的则是数据的

线程池的种类,区别和使用场景

线程池的种类,区别和使用场景 newCachedThreadPool: 底层:返回ThreadPoolExecutor实例,corePoolSize为0:maximumPoolSize为Integer.MAX_VALUE:keepAliveTime为60L:unit为TimeUnit.SECONDS:workQueue为SynchronousQueue(同步队列) 通俗:当有新任务到来,则插入到SynchronousQueue中,由于SynchronousQueue是同步队列,因此会在池中寻找可

C#中关于值类型和引用类型的区别

小声哔哔 一直以来对于值类型与引用类型之间的区别都不是特别清晰,直到踩了坑.... 正好最新闲暇,便想着梳理梳理这一两年来遇到的奇葩问题和解决方案,顺便就把它给拎出来记一下,免得以后再摔跤 值类型与引用类型的区别 今天为了说明值类型与引用类型的典型区别,准备把结构体(值类型)和类(引用类型)拉出来溜溜 首先咱们先定义一下 /// <summary> /// 类 /// </summary> class TestClass { public int Id { get; set; }

MySQL表类型MyISAM/InnoDB的区别(解决事务不回滚的问题)(转)

MyISAM:这个是默认类型,它是基于传统的ISAM类型,ISAM是Indexed Sequential Access Method (有索引的顺序访问方法) 的缩写,它是存储记录和文件的标准方法.与其他存储引擎比较,MyISAM具有检查和修复表格的大多数工具. MyISAM表格可以被压缩,而且它们支持全文搜索.它们不是事务安全的,而且也不支持外键.如果事物回滚将造成不完全回滚,不具有原子性.如果执行大量的SELECT,MyISAM是更好的选择. InnoDB:这种类型是事务安全的.它与BDB类