在UIImage上渲染CALayer

时间:2016-02-27 21:05:27

标签: objective-c swift uiimage calayer uigraphicscontext

我在一个“基础UIImage”之上合并了一些UIImage。这是减速的方法。所以我认为使用CALayer可能会加快速度。我无法找到它的方向。

我目前的代码: 有一些我没有添加的caluclations(变换,大小,来源)

 UIGraphicsBeginImageContextWithOptions(videoSize, true, UIScreen.mainScreen().scale)

 for image in images
 {
 image!.drawInRect(areaSize)
  image.drawInRect(CGRectMake(xp, yp ,sizeImg.width , sizeImg.height))
  }
 output = UIGraphicsGetImageFromCurrentImageContext()

            UIGraphicsEndImageContext()

有关如何使用CALayer(包含内容等)重现此内容的任何建议/指示。多谢你们!

更新

添加了示例(用户选择变换,大小,原点,小规模。比他点击保存时我需要以“真实图像”比例重绘它)

enter image description here

1 个答案:

答案 0 :(得分:0)

是的,你确实可以使用图层来做到这一点。您将加载图像,创建新的CALayer,并将图像的CGImage安装为图层的内容。然后,您将该图层添加为视图的子图层。

您想如何合并图片?只需将旧图像绘制在旧图像上,以便底部图像通过“透明位?”显示。