有时,术语图形上下文有点抽象。它们实际上是系统资源吗,但它们是来自显卡的资源,就像文件句柄是来自硬盘或任何永久存储设备的系统资源一样?
正如文件句柄有一些关于文件句柄是只读还是读/写的状态,以及下一次读取操作的当前位置——这些状态一样,图形上下文也有关于当前笔划颜色、笔划宽度或任何相关数据的状态。(更新:在写入模式下,我们可以转到200MB文件中的任何点并更改数据,就像我们有图形上下文的画布并在其上绘制东西一样)
因此,图形上下文实际上是全球性的、系统范围的资源。它们不是应用程序单例或任何东西的一部分,就像文件或文件句柄(不一定)是应用程序单体的一部分一样。
如果没有功能强大的图形卡(或者图形卡已经耗尽资源),那么操作系统可以使用位图使用低级图形例程模拟图形上下文,而不是让图形卡处理它。
在iOS和大多数其他常见操作系统上,图形上下文实际上是这样工作的吗?