'da CGImageCreateWithImageInRect ile dokunulama konumu kırpılamıyor Arka plan resminin bir bölümünü dokunmatik konuma kopyalamaya çalışıyorum, ardından kırpılan kısımla aynı noktaya bir alt görünüm ekliyorum. Eğer bunu doğru bir şekilde yapıyor olsaydım, her iki resim de sıraya girerdi ve iki UIImageViews'ın orada olduğunu söyleyemezdiniz, ancak aşağıdaki resimlere benziyor. Neden bu sıraya girmiyor ve neden yeni görüntü biraz yakınlaştırılıyor?Hızlı bir şekilde
Güncelleme: ImageView, ana görünümle aynı boyuttadır ve görüntü modu görünüm uydurmadır, bu nedenle resmin üstündeki ve altındaki görseller hala resim görünümünün bir parçasıdır.
override func touchesBegan(touches: Set<UITouch>, withEvent event: UIEvent?) {
let touch = touches.first!.locationInView(view)
let rect = CGRect(origin: touch, size: CGSize(width: 90, height: 90))
let imageRef = CGImageCreateWithImageInRect(mainImageView.image!.CGImage, rect)
if imageRef != nil {
let newImage = UIImage(CGImage: imageRef!)
let bgImage = UIImageView(image: newImage)
bgImage.center = touch
self.view.addSubview(bgImage)
self.view.bringSubviewToFront(bgImage)
}
}
Dokunma önce:
Yo UIImageView-GeometryConversion sınıfını doğru temas noktası elde etmek için kullanabilirsiniz .. burada link https://github.com/nubbel/UIImageView-GeometryConversion –
Cevabınız için teşekkürler. Hızlı bir şekilde bir örnek bulabileceğimi biliyor musunuz, çünkü hala neyi yanlış yaptığımı tam olarak emin değilim. –
Denedim: let convertedPoint = self.mainImageView.convertPoint (buna dokunun, toView: self.mainImageView) let rect = CGRect (kökeni: convertedPoint, boyut: CGSize (genişlik: 90, yükseklik: 90)) –