gpt4 book ai didi

ios - 为什么我的图像在使用 CG Context SetFillColor With Color 后颠倒了

转载 作者:塔克拉玛干 更新时间:2023-11-02 09:18:09 25 4
gpt4 key购买 nike

我正在尝试对 MKAnnotation 应用颜色填充。我发现了一些非常有效的代码,但由于某种原因,填充图像在应用填充后颠倒了。

这是我在 map 图钉上运行的当前代码。

CGRect rect = CGRectMake(0, 0, self.image.size.width, self.image.size.height);
UIGraphicsBeginImageContext(self.image.size);
CGContextRef context = UIGraphicsGetCurrentContext();
CGContextClipToMask(context, rect, self.image.CGImage);
CGContextSetFillColorWithColor(context, [[UIColor grayColor] CGColor]);
CGContextFillRect(context, rect);
CGContextRotateCTM(context, 90);
UIImage *img = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();

UIImage *flippedImage = [UIImage imageWithCGImage:img.CGImage
scale:1.0 orientation:self.image.imageOrientation];

self.image = flippedImage;

这是代码运行后引脚的样子。

http://d.pr/i/UaPU

我当时在想,如果我将当前图像方向应用到 f​​lippedImage 就可以解决问题,但那行不通。我还尝试设置 self.image = img; 并完全删除 flippedImage 变量,但结果仍然相同。

最佳答案

CGContext 坐标系相对于 UIView 坐标系垂直翻转。像这样翻转它: CGContextTranslateCTM(ctx, 0, imageHeight);,CGContextScaleCTM(ctx, 1, -1);

关于ios - 为什么我的图像在使用 CG Context SetFillColor With Color 后颠倒了,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16113845/

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