NSWindowGraphicContext

NSWindowGraphicContext

我想知道什么是NSWindowGraphicContext,如何访问它?
好像藏起来了无论如何,当我遵循代码className时,结果就是NSWindowGraphicContext。

NSGraphicsContext *graphiccontext = [NSGraphicsContext currentContext];
const char* className             = class_getName([graphiccontext class]);


与CGContextRef相同。

文件说


  “窗口图形上下文是可用于绘制到窗口中的图形上下文。请注意,由于Quartz 2D是图形引擎而不是窗口管理系统,因此您可以使用一种应用程序框架来获取窗口的图形上下文。 。”


但是它没有像创建位图上下文和PDF图形上下文那样提供标题的名称或创建细节的信息吗?我想进一步了解他们。

我认为Apple不想向用户公开这些细节。但是我需要了解更多。

最佳答案

那是您不应该知道的Apple使用的私有子类。因此,没有公共文档或标题。它将为您的Windows自动创建。您可以通过访问当前上下文(如您在问题中所做的那样)来获得它,或者像这样:

[NSGraphicsContext graphicsContextWithWindow:theWindow];


如果您想了解有关该类的更多信息,可以在AppKit上运行class-dump以获取标头。使用标头中的信息,您可以创建新的上下文,但是可能很难正确设置它们,最好向系统索要一个上下文。

09-12 10:24