What's the difference between Quartz Core, Core Graphics and Quartz 2D?

转载 2013年12月02日 11:50:56

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.frameworkOS 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.


举报

相关文章推荐

IOS画图库 - Core Graphics/QuartZ 2D 和OpenGL ES

转自:http://blog.sina.com.cn/s/blog_79fded950101h3g4.html +demo 连接  http://blog.csdn.net/zhibude...

iOS 图形处理 Core Graphics Quartz2D 教程

Core Graphics Framework是一套基于C的API框架,使用了Quartz作为绘图引擎。它提供了低级别、轻量级、高保真度的2D渲染。该框架可以用于基于路径的绘图、变换、颜色管理、脱屏渲...

我是如何成为一名python大咖的?

人生苦短,都说必须python,那么我分享下我是如何从小白成为Python资深开发者的吧。2014年我大学刚毕业..

What's difference between PMP and PRINCE2

There’s a post over at PM Student by Dr Paul Giammalvo comparing project management certifications. ...

Core Graphics Tutorial Part 3: Patterns and Playgrounds

原文链接:Core Graphics Tutorial Part 3: Patterns and Playgrounds 原文作者: Caroline Begbie 译文出自:开发者前线 www.d...

What's the difference between USBSAMP and OSRUSBFX2 sample?

转自Microsoft Windows USB Core Team Blog:http://blogs.msdn.com/b/usbcoreblog/archive/2009/10/11/summar...

【IOS 开发学习总结-OC-67】Quartz 2D绘图(4-4)——图形变换+填充处理+core image 滤镜

【IOS 开发学习总结-OC-67】Quartz 2D绘图(4-4)——图形变换+填充处理+core image 滤镜Quartz 2D提供了坐标变换支持,这样开发的时候 我们不许繁琐计算每个点坐标,...

iOS开发 基本绘图/Quartz 2D/Core Image

概述 在iOS中可以很容易的开发出绚丽的界面效果,一方面得益于成功系统的设计,另一方面得益于它强大的开发框架。今天我们将围绕iOS中两大图形、图像绘图框架进行介绍:Quartz 2D绘制2D图形...

iOS Core Graphics基础入门(2)

## 绘制三角形// 创建一个画布 CGContextRef context = UIGraphicsGetCurrentContext();// 创建图形路径 CGContextBeginPath(...

Layer Programming with Quartz Core  2D 3D的学习

Layer Programming with Quartz Core iOS开发者:   Quartz Core 框架就像是Leopard 桌面的Core Animation...
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)