OGeek|极客世界-中国程序员成长平台

标题: iOS - 将 UIImage 保存为灰度 JPEG [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-12 15:44
标题: iOS - 将 UIImage 保存为灰度 JPEG

在我的应用程序中,我转换和处理图像。 从彩色到灰度,然后进行直方图均衡、过滤等操作。 这部分工作正常。

我的 UIImage 显示正确,我也将它们保存为 jpeg 文件并且它可以工作。

唯一的问题是,虽然我的图像现在是灰度的,但它们仍然保存为 RGB jpeg。也就是说,每个像素的红绿蓝值都相同,但仍然会浪费空间来保留重复值,从而使文件大小超出预期。

所以当我在 Photoshop 中打开图像文件时,它是黑白的,但是当我检查“Photoshop > 图像 > 模式”时,它仍然显示“RGB”而不是“灰度”。

有人知道如何告诉 iOS UIImageJPEGRepresentation 调用应该创建每个像素一个 channel 而不是 4 个 channel 的数据吗?

提前致谢。



Best Answer-推荐答案


您应该使用 CGColorSpaceCreateDeviceGray() 对图像进行显式转换作为颜色空间,每个分量 8 位,1 个 channel 。

关于iOS - 将 UIImage 保存为灰度 JPEG,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19438714/






欢迎光临 OGeek|极客世界-中国程序员成长平台 (http://ogeek.cn/) Powered by Discuz! X3.4