gpt4 book ai didi

cocoa - 如何将一个 CGImage 叠加在另一个上

转载 作者:行者123 更新时间:2023-12-03 17:56:03 29 4
gpt4 key购买 nike

我希望将一个 CGImage 覆盖在另一个之上。

作为示例,第一个 CGImage 为 1024x768,并且想要在给定位置覆盖第二个 100x100 CGImage。

我已经了解了如何使用 NSImage 执行此操作,但实际上并不想将我的 CGImage 转换为 NSImage,然后进行叠加,然后将结果转换回 CGImage。我也看过该代码的 iOS 版本,但不确定如何在 Mac 上进行操作?

最佳答案

我主要习惯于 iOS,所以我可能在这里超出了我的深度,但假设你有一个图形上下文(大小与两个图像中较大的一个相同),你不能只在上面绘制两个 CGImage彼此的关系?

CGImageRef img1024x768;
CGImageRef img100x100;

CGSize imgSize = CGSizeMake(CGImageGetWidth(img1024x768), CGImageGetHeight(img1024x768));

CGRect largeBounds = CGRectMake(0, 0, CGImageGetWidth(img1024x768), CGImageGetHeight(img1024x768));
CGContextDrawImage(ctx, largeBounds, img1024x768);

CGRect smallBounds = CGRectMake(0, 0, CGImageGetWidth(img100x100), CGImageGetHeight(img100x100));
CGContextDrawImage(ctx, smallBounds, img100x100);

然后将结果绘制到NSImage中?

关于cocoa - 如何将一个 CGImage 叠加在另一个上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13259835/

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