我有一个符合屏幕大小的UIImageView:
imageView.contentMode = .scaleAspectFill
self.view.addSubview(imageView)
imageView.leftAnchor.constraint(equalTo: self.view.leftAnchor).isActive = true
imageView.rightAnchor.constraint(equalTo: self.view.rightAnchor).isActive = true
imageView.topAnchor.constraint(equalTo: self.view.topAnchor).isActive = true
imageView.bottomAnchor.constraint(equalTo: self.view.bottomAnchor).isActive = true
在imageView中我有一张图片:
imageView.image = UIImage(named: "pizza")
在imageView界限内的某个位置,我想要提取披萨内部的内容,并将提取的部分发送给另一个UIView。
例如:
let extractionPointX = 0 //imageView.bounds.orgin.x == 0
let extractionPointY = 50 //imageView.bounds.orgin.y == 50
let extractionHeight = 100 //area's height is == 100
let extractionWidth = imageView.frame.size.width
let myExtractedImage = //the corrdinates from above
现在我已经知道披萨图片上的那个区域的x,y,高度和宽度,我现在可以把它添加到另一个UIView。
anotherView.addSubview(myExtractedImage)
或
anotherImageView.image = UIImage(named: "myExtractedImage")
我不关心之后比萨饼图像会发生什么,因为一旦我得到需要从中提取的区域,我将把imageView的图像设置为nil。它可以是披萨的实际区域,作为UIView,或者是该区域的单独图像(如快照)。
我该怎么做?