NSImage用代码替换NSImage图片颜色

2021-10-14  本文已影响0人  devileatapple

在iOS中有使用UIGraphicsBeginImageContextWithOptions去改变UIImage中的图片颜色,在macOS中找了很久,才找到线面的方法实现同样的操作。
- (NSImage*)changeColor:(NSColor*)color oldImage:(NSImage *)oldImage {

    NSImage*newImage=[oldImage copy];

    [newImage lockFocus];

    [color set];

    NSRect imageRect=NSMakeRect(0, 0, oldImage.size.width, oldImage.size.height);

    NSRectFillUsingOperation(imageRect, NSCompositingOperationSourceAtop);

    [newImageun lockFocus];

    return newImage;

}

上一篇 下一篇

猜你喜欢

热点阅读