如果使用System.Drawing.Bitmap创建位图,如何指定位图使用什么颜色空间?另外,当我将图像另存为jpeg或tiff时,如何确定颜色配置文件已嵌入?

最佳答案

我想我已经找到了答案。

色彩空间记录在图像的PropertyItems

它的ID为40961,即EXIF ID。

因此,我假设将这个属性的实例添加到新创建的位图中将为图像提供色彩空间。

不过有一个大问题。 System.Drawing.Imaging.PropertyItem类没有公共构造函数。因此,不可能创建新的PropertyItem。它在documentation中表示PropertyItems仅用于访问现有图像元数据,而不用于创建元数据。那么,如果我想创建一个全新的图像并为其分配PropertyItem色彩空间怎么办?

它还在文档中说,如果我希望创建一个新的PropertyItem,则应该获得一个现有的PropertyItem,对其进行克隆,编辑该克隆并将其添加到PropertyItems。但是,如果我要创建新图像,则将不存在任何PropertyItems。那么我应该如何添加一个声明颜色空间的PropertyItem

关于.net - System.Drawing.Image和色彩空间,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12631782/

10-10 16:13