相关疑难解决方法(0)

着色灰度NSImage(或CIImage)

我有一个灰度图像,我想用它来绘制Cocoa控件.图像具有不同级别的灰度.在最黑暗的地方,我希望它能画出最暗的指定色调.我希望它在源图像为白色时是透明的.

基本上,我想重现iPhone上UINavigationBar中看到的tintColor的行为.

到目前为止,我已经探索了几个选项:

  • 使用SourceOver合成在灰度图像上绘制色调颜色 - >这需要非不透明的色调 - >结果比期望的要暗得多

  • 使用CIMultiplyCompositing CIFilter为图像着色 - >我不能[CIImage drawAtPoint:fromRect:operation:fraction:]只绘制部分图像.同样适用于NSImage - >我偶尔会碰到一些我无法理解的崩溃

  • 将灰度图像转换为蒙版.即黑色应该是不透明的.白色应该是透明的.灰色应具有中间alpha值. - >这似乎是最好的解决方案 - >尽我所能,我无法做到这一点.

cocoa objective-c core-image

28
推荐指数
4
解决办法
1万
查看次数

标签 统计

cocoa ×1

core-image ×1

objective-c ×1