SDK 10.10中的graphicsPort的Quartz 2D替代

Eni*_*nie 6 deprecated cgcontext quartz-2d

场景:

我正在编辑一些CGImages并且很奇怪,直到现在我才开始在绘制它们之前NSImage从那些CGImages中创建s .所以我试着改变代码,以便我CGImage直接将s 绘制成NSGraphicsContext.currentContext().graphicsPort.如你所见,我在这里使用Swing但是我认为Objective-C也存在同样的问题.

看一下我看到的文档graphicsPort将在10.10中被弃用,但我找不到另一种方法来获取当前的CGContext,NSGraphicsContext也没有办法创建一个CGContext来自NSGraphicsContext.

问题:

有谁知道检索上下文的正确方法是什么?如果不是 - 有没有办法将graphicsPort's COpaquePointer,显然是一个初始化的NSPipe对象)转换为CGContextRef?虽然使用已被标记为已弃用的代码会非常不令人满意,但我会考虑它,直到有更好的解决方案.

rob*_*cer 8

花了半个小时来寻找有关这方面的信息后,我意识到我应该查看头文件NSGraphicsContext.原来还有一个新的属性NSGraphicsContext,显然还没有记录:CGContext.标题还指出应该使用它代替graphicsPort.