gpt4 book ai didi

cocoa - NSBezierPath 到 NSImage 以避免 CoreAnimation

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

我有一个应用程序当前包含此行:

[myView setWantsLayer:YES];

为了通过 NSBezierPath 绘制 GUI 元素。此行是必需的,否则当用户在相邻(且重叠)的 NSTextField 中键入内容时,myView 的内容会颤抖。

我发现调用 CoreAnimation 会加载 OpenGL 框架,但不会卸载它。 参见 this question.

我想我可以通过将 NSBezierPath 绘制到 NSImage 然后显示 NSImage 来代替 NSBezierPath 来解决这个问题,但我还没有找到一个向我展示如何解决此问题的源代码。

<小时/>

编辑:

我应该注意,我想在显示 NSBezierPath 之前保存它 - 所以解决方案 draw an existing view to an NSImage没有用。

<小时/>

问题:

有人可以指出我将 NSBezierPath 转换为 NSImage 的正确方向吗?

最佳答案

你可以将任何东西直接绘制到 NSImage 中,并且可以创建一个空白的 NSImage。因此,创建一个大小为路径边界大小的图像,平移路径,使其位于图像的原点,然后将焦点锁定在图像上,绘制路径,然后解锁焦点。

关于cocoa - NSBezierPath 到 NSImage 以避免 CoreAnimation,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4126983/

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