gpt4 book ai didi

cocoa - 从 NSGraphicsContext 获取图像

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

如何将图形上下文中的绘图作为图像获取?

最佳答案

如果它的图形端口是 CGBitmapContext,您可以从中创建图像。

但这不是您想要依赖的东西。如果上下文的图形端口不是 CGBitmapContext,那么您就完蛋了。此外,没有安全的方法来判断它是否是 CGBitmapContext。

所以,实际上,您无法从 NSGraphicsContext 创建图像。

这导致了替代方案的问题。

如果是绘制到上下文中的 NSView,问题就解决了:您可以 ask the view for a PDF of what it draws ,并(如有必要)从中创建图像。或者,将焦点锁定在 View 上并从焦点 View 创建 NSBitmapImageRep。这些都不能在 drawRect: 内部工作(后者可能工作,但我不相信它不会调用 drawRect:)。

如果您认为需要在 drawRect: 中使用此图像,以便将某些绘图橡皮图章标记到多个位置,则有两种更好的解决方案:将该绘图代码移动到另一个方法中并调用它每次你需要绘制它,或创建一个 CGLayer ,将图像绘制一次进去,然后根据需要绘制CGLayer。重复绘制相同的东西就是 CGLayers 存在的目的。

关于cocoa - 从 NSGraphicsContext 获取图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3882168/

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