What's the difference between Quartz Core, Core Graphics and Quartz 2D?
2014-03-20 17:15
411 查看
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.
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.
原文地址:http://stackoverflow.com/questions/1877987/whats-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?
- What is the difference between new/delete and malloc/free?
- What is the Difference Between `apt-get purge` and `apt-get remove`?
- What is the difference between ./ and sh to run a script?
- What is the difference between OCCURS n and INITIAL SIZE n?
- In SQL, what is the difference between a left join and a left outer join?
- What are the difference between DDL, DML and DCL commands?
- What is the difference between "transit","transfer","transmit... and "transport"
- What Is The Difference Between Artificial Intelligence And Machine Learning?
- What’s the Difference between a Hue, Tint, Shade and Tone ?
- What is the difference between const and static readonly?(const 和 static readonly 的区别?)
- What is the difference between Full load and Incremental load
- What is the difference between a Session and a Cookie?
- What is the difference between Simple, Advanced and Parameter data sets?
- What’s the Difference Between a Value Provider and Model Binder?
- What is the difference between Listview and Treeview?
- Whats the difference between git reset --mixed, --soft, and --hard?
- What’s the Difference Between HDMI and DVI? Which is Better?