在MonoTouch中使用颜色色调绘制图像

时间:2013-02-09 21:20:09

标签: cocoa xamarin.ios

我需要阅读哪些内容来为我使用预定义颜色绘制的图像着色。或者只是调整alpha值?我玩过BlendMode但我基本上不知道我在做什么。 :)

以下简单的代码

_backgroundImage = UIImage.FromFile ("whiteblock.png"); 

var ctx = UIGraphics.GetCurrentContext ();

// What do I do here to tint or adjust alpha of the image       
ctx.DrawImage (rect, _backgroundImage.CGImage);

由于

AnkMannen

1 个答案:

答案 0 :(得分:1)

我建议从Core Image Filter参考文档开始(另请参阅 CIFilter )。
(请注意,根据操作系统的版本,并非所有过滤器都可用。)

您可能希望关注CICategoryColorAdjustment类别中的过滤器。 特别是, CITemperatureAndTint 过滤器可以根据您的要求调整图像的色调。但是,使用它并不简单。* StackOverflow还有其他问题描述它,如下所示:Input parameters of CITemperatureAndTint (CIFilter)

最后,请查看MonoTouch文档以获取CITemperatureAndTint的代码示例。 (我相信附带的图片附带的图片是错误的,因为它们显示的是缩放图像,而不是有色图像。)

*它需要两个参数,每个参数都是2D CIVector。我相信矢量的第一个组成部分是温度,应该在(1k ... 30k)的球场。我相信第二个成分是波长,所以在(380 ... 700)的球场。如果有人知道的更好,请纠正我。