gpt4 book ai didi

ios - 将UIImage着色为其他颜色,或者从矢量生成UIImage

转载 作者:行者123 更新时间:2023-12-01 17:59:33 26 4
gpt4 key购买 nike

我有一个带有黑色轮廓的圆圈和一个白色填充,我需要通过编程将白色变成另一种颜色(通过UIColor)。我已经尝试了其他一些stackoverflow解决方案,但似乎都无法正常工作,只能填充外部或轮廓。

我有两种方法可以做到这一点,但是我不确定如何获得正确的结果:

只是将白色调为UIColor应该的颜色,

要么,

用两个圆圈制作一个UIImage,一个圆圈被填充,另一个圆圈与黑色重叠。

最佳答案

如果您决定使用两个圆圈,一个白色和一个黑色,则可能会有所帮助。此方法将为您着色一个uiimage,但它解决了仅着色不透明部分的问题,这意味着仅当您为png提供围绕圆形的透明性时,它才会着色圆形。因此,它不会填充整个图像的24x24帧,而是仅填充不透明的部分。这不完全是您的问题,但是如果使用列出的第二个选项,您可能会遇到此问题。

-(UIImage*)colorAnImage:(UIColor*)color :(UIImage*)image{

CGRect rect = CGRectMake(0, 0, image.size.width, image.size.height);
UIGraphicsBeginImageContextWithOptions(rect.size, NO, image.scale);
CGContextRef c = UIGraphicsGetCurrentContext();
[image drawInRect:rect];
CGContextSetFillColorWithColor(c, [color CGColor]);
CGContextSetBlendMode(c, kCGBlendModeSourceAtop);
CGContextFillRect(c, rect);
UIImage *result = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
return result;

}

关于ios - 将UIImage着色为其他颜色,或者从矢量生成UIImage,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12375946/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com