gpt4 book ai didi

ios - 关于 quartz2d、核心图形、核心动画、核心图像的混淆

转载 作者:IT王子 更新时间:2023-10-29 07:58:40 25 4
gpt4 key购买 nike

我正在做一个需要一些图像处理的项目,我也问过有关它的问题,我得到了很好的解决方案,这里是链接 create whole new image in iOS by selecting different properties

但现在我想更详细地学习这个,我很困惑我应该从哪里开始学习 quartz 2d 或核心动画或核心图形或核心图像

苹果文件说关于 quartz 2d

The Quartz 2D API is part of the Core Graphics framework, so you may see Quartz referred to as Core Graphics or, simply, CG.

苹果文档说核心图形

The Core Graphics framework is a C-based API that is based on the Quartz advanced drawing engine.

这令人困惑他们之间的关系......

现在核心动画包含了绘制图像所需的所有坐标、边界、帧等概念

核心镜像是在ios 5中引入的

我应该从哪里开始学习或者我应该从哪个顺序开始学习所有这些。

最佳答案

Quartz 和 Core Graphics 实际上是同义词。我倾向于避免使用“Quartz”,因为该术语很容易引起混淆(事实上,包含 Core Animation 的框架是“QuartzCore”,进一步造成混淆)。

我会说:

  • 如果您需要高性能矢量绘图(直线、矩形、圆形、文本等),请学习 Core Graphics (CoreGraphics.framework),或许可以通过简单的方式与位图/光栅图形混合使用修改(例如缩放、旋转、边框等)。 Core Graphics 并不是特别适合更高级的位图操作(例如颜色校正)。它可以在位图/光栅操作方面做很多事情,但并不总是显而易见或直接的。简而言之,Core Graphics 最适合“Illustrator/Freehand/OmniGraffle”类型的用途。

  • 学习 Core Animation(在 QuartzCore.framework 内),如果您需要为内容制作动画。基本动画(例如在屏幕上移动 View )完全可以在没有 Core Animation 的情况下使用基本的 UIView 功能来完成,但是如果你想做更高级的动画,Core Animation 是你的 friend 。有点不直观的是,Core Animation 也是 CALayer 系列类的所在地,除了可动画之外,它还允许你做一些更有趣的事情,比如快速(尽管表现不佳) View 阴影和 3D 变换(给你可能会想到的东西作为“穷人的 OpenGL”)。但它主要用于动画内容(或内容属性,例如颜色和不透明度)。

  • 如果您需要高性能、像素精确的图像处理,请学习 Core Image(在 QuartzCore.framework 内)。这可能是从色彩校正到镜头光晕到模糊以及介于两者之间的一切。 Apple 发布 a filter reference枚举了各种可用的预构建 Core Image 过滤器。您也可以自己编写,尽管这不一定适合胆小的人。简而言之,如果您需要实现类似“[选择您最喜欢的照片编辑器] 滤镜”之类的功能,那么 Core Image 是您的不二之选。

这是否澄清了问题?

关于ios - 关于 quartz2d、核心图形、核心动画、核心图像的混淆,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9248530/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com