What's the difference between Quartz Core, Core Graphics and Quartz 2D?
来源:互联网 发布:js ajax push 编辑:程序博客网 时间:2024/06/07 05:45
Quartz 2D is an API of the Core Graphics framework that implements drawing.
Quartz Core is a framework that includes APIs for animation and image processing.
Quartz frameworks and their APIs
CoreGraphics.framework
- Quartz 2D API manages the graphic context and implements drawing.
- Quartz Services API provides low level access to the window server. This includes display hardware, resolution, refresh rate, and others.
QuartzCore.framework
- Core Animation: Objective-C API to do 2D animation.
- Core Image: image and video processing (filters, warp, transitions).iOS 5
Quartz.framework
OS X only
- Image Kit: display and edit images.
- PDF Kit: display and edit PDFs.
- Quartz Composer: display Quartz Composer compositions.
- QuickLookUI: preview media elements.
All three frameworks use OpenGL underneath because all drawing in iOS or OS X goes through OpenGL at some point. See the section Media Layer Frameworks of the Mac OS X Technology Overview for details.
Other "Quartz" technologies you may have heard of:
- Quartz Extreme: GPU acceleration for Quartz Composer.
- QuartzGL (aka "Quartz 2D Extreme"): GPU acceleration for Quartz 2D.
These are internal implementations of GPU rendering, not APIs. They decide whether to create the window buffer in the CPU and only use OpenGL to upload as a texture (the default) or to do the whole rendering using OpenGL, which not always improves performance. You can alternate between the two using the QuartzGLEnable Info.plist setting. For an explanation see John Siracusa review of Mac OS X 10.4 Tiger, pages 13 and 14.
“Quartz” and “Core” are marketing names sprinkled over frameworks and APIs in a random manner. If they wanted to create a confusing naming mess, they succeeded.
- What's the difference between Quartz Core, Core Graphics and Quartz 2D?
- What's the difference between Quartz Core, Core Graphics and Quartz 2D?
- What's the difference between Quartz Core, Core Graphics and Quartz 2D?
- What is the difference between a processor, a chip, a socket, and a core?
- IOS画图库 - Core Graphics/QuartZ 2D 和OpenGL ES
- IOS画图库 - Core Graphics/QuartZ 2D 和OpenGL ES
- What's the difference between an event and a delegate?
- what's the difference between OnDraw and OnPaint
- What's the difference between stack and heap?
- What's the difference between LastWriteTime and ChangeTime in FILE_BASIC_INFO?
- What's the difference between Heap and Stack
- What's the difference between overload and override
- What's the difference between glibc and libc6?
- What's the difference between "but" and "yet"
- What's+the+difference+between+virtualization+and+cloud+computing?
- What's the difference between parallel and concurrent?
- What's the difference between program arguments and VM arguments?
- What's the difference between Template and Table in Smartforms
- 一步一步学android控件(之二十六)—— QuickContacBadge
- 中国佛学66句震撼世界的禅语
- NSNumber的用法
- JUnit4 中@AfterClass @BeforeClass @after @before的区别对比
- js实现全选和反选功能
- What's the difference between Quartz Core, Core Graphics and Quartz 2D?
- 并发冲突域
- BASE64Encoder解码
- sp_send_dbmail 存储过程发送邮件
- 堆排序(降序)
- java.lang.IllegalStateException: The content of the adapter has changed but ListView did not receive
- ubuntu13.10 修改/etc/profile后,系统登录不了
- js的时间操作方法
- 在Windows 中如何导出文件目录树