我正在做一个涉及Core Animation和AV Foundation的项目。我想使用Core Animation来渲染一些效果,然后通过AV Foundation将其导出到视频文件。我想要实现的动画效果是重放最终用户在iPad上签名他/她的签名。核心动画drawLayer:由NSTimer驱动的inContext,我做对了吗?
我迄今取得什么: - 从苹果指GLPainter样品,我能够记录用户签名的笔画,每一个人比杆由多个触摸点(CGPoint)的其已记录在我的自定义UIView的touchBegin/touchMoved/touchEnd方法中。由可重复的NSTimer驱动,我可以在我的自定义UIView上重新绘制它。主要是从一点到另一点绘制线的重复过程。
我想要做的事: 实现签名与核心动画技术,重画,再后来,嵌入式核心动画代码带有AV基金会组成的代码,以使最终输出。
我现在所忧虑:
- 知道一无所知的Core Animation,我一直在学习它的最后几天。然而,我读过的教程/书籍仅告诉我如何通过更改CALayer的属性或制作CAKeyframeAnimation来制作隐式动画。但是我的动画是逐渐在画布的画布上绘制某些东西,而不是移动某物。那么,如何在Core Animation中做到这一点?
我现在正在做的:颇为相似,我与Quartz2D做到了,我用的NSTimer反复设置我的CALayer对象needsDisplay,这反过来又调用其委托的实现drawLayer的:inContext的方法,在那里我写了和我在UIView的drawRect中写的相同的代码。
那么,我没有任何涉及CAAnimation的动画。我只是觉得奇怪,感觉我做错了。我还没有开始将AV动画与AV基础部分结合起来,但我怀疑我的这种做法是否会通过。
我做了诚实搜索,所以我发誓,但没有发现任何相关信息。我在Quartz2D和Core Animation中的经验非常有限,我不得不说,所以,如果有人能给我一些提示,非常感谢,谢谢!
谢谢,PeyloW。我终于通过这种方法实现了目标http://stackoverflow.com/questions/6311184/creating-a-movie-file-of-a-animation-with-avassetwriter –