OS X 上的图像位深度转换
Image BitDepth conversions on OS X
我需要将 32 bpp 图像转换为 24、16 位深度。我的是 OS X 中的 cocoa 应用程序。哪种方法最好?我在 NSData 中有原始图像数据 (RGBA)。在 OS X 中是否可以使用任何 frameworks/APIs 或库?
你要更清楚自己拥有什么,想要什么。例如,对于您的目的,32bpp 和 24bpp 之间有什么区别?
无论如何,vImage 例程可能是您想要的,因为您是从原始数据开始的。例如,vImageConvert_ARGB8888toARGB1555()
是一种将 32bpp 图像转换为 16bpp 的方法。 vImageConvert_ARGB8888toRGB565()
是一种不同的方式,尽管它忽略了 alpha 分量。
vImageConvert_ARGB8888toRGB888()
通过简单地删除 alpha 通道从 32bpp 转换为 24bpp。
等等
我需要将 32 bpp 图像转换为 24、16 位深度。我的是 OS X 中的 cocoa 应用程序。哪种方法最好?我在 NSData 中有原始图像数据 (RGBA)。在 OS X 中是否可以使用任何 frameworks/APIs 或库?
你要更清楚自己拥有什么,想要什么。例如,对于您的目的,32bpp 和 24bpp 之间有什么区别?
无论如何,vImage 例程可能是您想要的,因为您是从原始数据开始的。例如,vImageConvert_ARGB8888toARGB1555()
是一种将 32bpp 图像转换为 16bpp 的方法。 vImageConvert_ARGB8888toRGB565()
是一种不同的方式,尽管它忽略了 alpha 分量。
vImageConvert_ARGB8888toRGB888()
通过简单地删除 alpha 通道从 32bpp 转换为 24bpp。
等等