我的目标是叠加两张图片(第一张照片来自相机胶卷,第二张是卡通幽灵的PNG)。
我已经足够远,以至于我将相机胶卷图像和选定的重影图像传递给视图控制器。但我遇到的问题是如何以可用的方式对这些图像进行分层。
我可以通过几种方式在原始照片中流动(通过从图像视图开始或通过在视图中以编程方式创建一个),我可以在它上面添加鬼(我主要是以编程方式执行此操作)。
但是我只能手动控制幽灵的大小和位置。我希望它以原始图像为中心并匹配其高度或宽度,具体取决于哪个更小,因为它可以是水平或垂直。
经过一夜的搜索,我发现空白。但肯定有一种方法可以抓住图像视图的坐标并进行计算,对吧?
以下是我所拥有的:
import UIKit
class TwoLayerViewController: UIViewController {
@IBOutlet weak var bottomLayerImage: UIImageView!
var originalPhoto: UIImage?
var chosenGhostPhoto: UIImage?
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
bottomLayerImage.image = originalPhoto
bottomLayerImage.contentMode = UIViewContentMode.ScaleAspectFit
var ghostView = UIImageView(frame:CGRectMake(bottomLayerImage.frame.origin.x, bottomLayerImage.frame.origin.y, 100, 100))
ghostView.image = chosenGhostPhoto
ghostView.backgroundColor = UIColor.grayColor()
bottomLayerImage.addSubview(ghostView)
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
}