gpt4 book ai didi

cocoa - 在 NSRect 中绘制图像

转载 作者:行者123 更新时间:2023-12-03 16:19:38 26 4
gpt4 key购买 nike

我在 NSRect 中绘制图像时遇到困难,下面的代码在所需位置创建一个 NSRect 并放入图像。问题是图像是一个带有透明区域的圆形,并且这些区域被填充黑色,所以我没有一个圆圈,而是一个黑色的正方形,里面有圆圈 img...

- (void)drawRect:(NSRect)dirtyRect{

NSImage *bg = [NSImage imageNamed:@"citydot_c1.png"];
NSRect city = NSMakeRect(10, 10, 8, 8);
[bg drawInRect:city fromRect:NSZeroRect operation:NSCompositeSourceAtop fraction:1.0f];

NSFrameRect(city);
}

所以基本上,我需要一种方法来删除 NSRect 的背景颜色,我认为......

有人有什么想法吗?

最佳答案

您可能想使用 Porter-Duff“Over”来构图:

[bg drawInRect:city fromRect:NSZeroRect operation:NSCompositeSourceOver fraction:1.0f];

使用此混合操作,您可以获得正常的透明度合成。

关于cocoa - 在 NSRect 中绘制图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13039263/

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