objective-c - 是否可以检查存储在 NSimage 对象中的图像是否为灰度图像?

标签 objective-c macos cocoa nsimage

是否有一种简单的方法来检查 NSImage 对象是否包含灰度图像?

我想做的是计算 pdf 中彩色和黑白页面的数量。据我所知,唯一真正的解决方案是将 pdf 页面呈现为图像,然后从那里开始工作。如果可能的话,我不想检查每个像素,但到目前为止我只能想到这些。

最佳答案

您可以访问 NSImage-representations(返回 NSImageRep 实例数组)并查询返回的 NSImageRep 获取这些详细信息。

感兴趣的主要 NSImageRepCGImage 细节包括:

  • 分配的色彩空间
  • 图像位图信息中的分量数、每个分量的位数和每个像素的位数。

关于objective-c - 是否可以检查存储在 NSimage 对象中的图像是否为灰度图像?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8617759/

相关文章:

macos - 在 Mac OS X 上查找已挂载网络共享的路径

objective-c - NSPathControl 和自动布局

objective-c - 更改 NSTextField、NSTextView 的 FocusRing 颜色

objective-c - 在不使用线程的情况下如何分解长时间运行的任务?

ios - 比较 NSData 对象的创建/修改日期

objective-c - 如何将视频效果应用到 osx 中的 native 应用程序

iphone - dispatch_async 中的自定义 block

iphone - 如果我从 (__bridge) 使用 CGImageSourceCreateWithData,是否需要 "CFRelease"?

cocoa - 如何在cocoa osx中检测网络事件

java - Mac OS X Yosemite 视网膜上带有 Java 8u25 的 Netbeans 8.0.1 BLURRY