我有一个灰度图像,我想用它来绘制Cocoa控件.图像具有不同级别的灰度.在最黑暗的地方,我希望它能画出最暗的指定色调.我希望它在源图像为白色时是透明的.
基本上,我想重现iPhone上UINavigationBar中看到的tintColor的行为.
到目前为止,我已经探索了几个选项:
使用SourceOver合成在灰度图像上绘制色调颜色 - >这需要非不透明的色调 - >结果比期望的要暗得多
使用CIMultiplyCompositing CIFilter为图像着色 - >我不能[CIImage drawAtPoint:fromRect:operation:fraction:]只绘制部分图像.同样适用于NSImage - >我偶尔会碰到一些我无法理解的崩溃
将灰度图像转换为蒙版.即黑色应该是不透明的.白色应该是透明的.灰色应具有中间alpha值. - >这似乎是最好的解决方案 - >尽我所能,我无法做到这一点.
我正在使用UIActivityIndicatorView向用户显示正在发生的事情,让他们等待.但是UIActivityIndicatorView看起来很小,没有背景颜色,对用户来说也不是很明显.在iPhone SDK的UIImagePickerController中,它使用类似的机制,但黑色背景以及指示符之外的一些文本.
我想知道是否有任何现有组件来执行该任务,或者我必须实现我自己的类来执行该任务.
任何建议都非常受欢迎,提前谢谢.
我想更改在NSProgressIndicator
栏内绘制的默认渐变的颜色.什么是最简单的方法?