CGLayer,CALayer和CGContext有什么区别?
发布于 2016-09-26 05:11:06
所以,正如一份文件上说的
CALayer从QuartzCore framework是
CALayer类管理基于图像的内容,并允许您对该内容执行动画。层通常用于为视图提供后备存储,但也可以在没有视图的情况下使用来显示内容。
有关更多信息,请访问https://developer.apple.com/reference/quartzcore/calayer
CGLayer从Core Graphics framework是
图层对象对于屏幕外绘图很有用,并且可以像位图上下文一样使用。实际上,CGLayer对象比位图上下文的表示要好得多。使用CGLayer对象可以提高性能,特别是当您需要捕获一张重复标记的绘图时(使用相同的比例因子和方向)
有关更多信息,请访问https://developer.apple.com/reference/coregraphics/1666309-cglayer
注CGLayer对象与核心动画层(CALayer对象)无关。
CGContext从Core Graphics framework是
图形上下文包含绘图参数和将页面上的油漆呈现给目标所需的所有设备特定信息,无论目标是应用程序中的窗口、位图图像、PDF文档还是打印机。
有关更多信息,请访问https://developer.apple.com/reference/coregraphics/1666363-cgcontext
发布于 2016-09-26 05:19:53
CGLayer中的CG代表核心图形,CA在CALayer中代表核心动画。这些确实令人困惑。
CGLayer是由CoreGraphics.framework提供的,主要用于绘制各种几何形状的矢量对象,如圆、矩形、直线等,为高性能的图形绘制提供了支持。
CALayer (由Quartz框架提供)只是用于“视图”中的内容动画。这是基于OpenGL的,主要是使用GPU。
CGContext (再次由Quartz框架提供)-此内容是直接从doc复制的
图形上下文包含绘图参数和将页面上的油漆呈现给目标所需的所有设备特定信息,无论目标是应用程序中的窗口、位图图像、PDF文档还是打印机。您可以通过使用Quartz图形上下文创建函数或使用can、Cocoa或打印框架中提供的更高级别的函数来获得图形上下文。石英为不同风格的Quartz图形上下文提供创建功能,包括位图图像和PDF。Cocoa框架提供了获取窗口图形上下文的功能。打印框架提供了获取适合目标打印机的图形上下文的功能。
https://stackoverflow.com/questions/39695032
复制相似问题