[Foundation.Register("CIImage", true)]
public class CIImage : Foundation.NSObject, Foundation.INSCopying, Foundation.INSSecureCoding, IDisposable
type CIImage = class
    inherit NSObject
    interface INSCoding
    interface INativeObject
    interface IDisposable
    interface INSCopying
    interface INSSecureCoding
CIImage

与 CoreGraphics 图像 ( CGImage ) 不同,这些图像是保存要处理的实际图像数据的对象,CIImages 表示一组用于获取图像的指令。 这些方案在 CoreImage 筛选、分析或呈现管道期间用于实际创建位图表示形式。

CIImage 是从磁盘加载图像的结果、NSData 数组、CoreVideo 缓冲区、CoreGraphics 图像的结果,或者是 CoreImage 处理图像管道的结果。

例如,将各种筛选器 ( CIFilter ) 链接在一起,并且仅在一个筛选器的输出与另一个筛选器的输入之间传递其抽象表示形式时,会使用 CIImage。 图像甚至可能不驻留在主内存中,它可以完全驻留在 GPU 空间中,作为两个筛选器之间的中间步骤。

自动增强筛选器

方法 GetAutoAdjustmentFilters(CIAutoAdjustmentFilterOptions) 可用于获取 CIImage 筛选器的列表,这些筛选器可用于更正照片中发现的各种问题。

这些参数通常包括:

可以通过设置实例的属性 CIAutoAdjustmentFilterOptions ,然后调用相应的方法来配置要获取或配置的筛选器类型。

void PrepareFixes (CIImage img)
    var opt = new CIAutoAdjustmentFilterOptions () {
    	RedEye = true,
    	AutoAdjustCrop = true
    foreach (var filter in img.GetAutoAdjustmentFilters (opt)) {
    	filter.Image = img;
    	img = filter.OutputImage;
		

使用 NSString keyPath) 注册一个对象,以便在外部 (观察到该对象。   观察到的更改将调度到观察者的 对象 ObserveValue(NSString, NSObject, NSDictionary, IntPtr) 方法。

(继承自 NSObject)

使用字符串 keyPath) 注册一个对象,以便在外部 (观察到该对象。   观察到的更改将调度到观察者的 对象 ObserveValue(NSString, NSObject, NSDictionary, IntPtr) 方法。

(继承自 NSObject)