如何在Swift中为图像添加贴纸?

时间:2015-09-05 02:02:05

标签: ios iphone swift

我正在开发一个Swift iOS应用程序,我希望用户能够在另一个图像上放置一个图像(像胡须或眼罩一样的贴纸)。

目前我已经将它用于拍摄照片或从照片中提取图像并将其显示在UIImage中。显然接下来是添加贴纸。我已经能够从Google或Stack中挖掘零数据了。我的意思是零。

有没有人对如何执行此操作有一个大概的了解?具体情况当然也有帮助。

2 个答案:

答案 0 :(得分:7)

这是一个简单的方法。

  1. 有一个UIView作为父母,让我们说stickerView
  2. 将图片添加到stickerView
  3. 将贴纸添加到stickerView
  4. 保存stickerView
  5. 的快照

    这里是快照UIView

    的代码
    extension UIImage {
        class func imageWithView(view: UIView) -> UIImage {
            UIGraphicsBeginImageContextWithOptions(view.bounds.size, view.opaque, 0.0)
            view.drawViewHierarchyInRect(view.bounds, afterScreenUpdates: true)
            let img = UIGraphicsGetImageFromCurrentImageContext()
            UIGraphicsEndImageContext()
            return img
        }
    }
    

    用法

    let snapshotImage = UIImage.imageWithView(stickerView)

答案 1 :(得分:0)

我建议您添加UIImageView贴纸而不是在添加贴纸时编辑图像。然后在保存图像时,您应该编辑图像。