1. 程式人生 > >關於swift中自定義相機拍照後,擷取照片程式碼

關於swift中自定義相機拍照後,擷取照片程式碼

//1.先實現這個方法後得到返回的照片
 func scaleToSize(image:UIImage!,size:CGSize) -> UIImage{

        // 得到圖片上下文,指定繪製範圍
        UIGraphicsBeginImageContext(size);
        // 將圖片按照指定大小繪製
        image.draw(in: CGRect(x:0,y:0,width:size.width,height:size.height))
        // 從當前圖片上下文中匯出圖片
        let img:UIImage = UIGraphicsGetImageFromCurrentImageContext()!
        // 當前圖片上下文出棧
        UIGraphicsEndImageContext();
        // 返回新的改變大小後的圖片
        return img

    }

//2.實現這個方法,,就拿到了擷取後的照片.

    func imageFromImage(imageFromImage:UIImage!,inRext:CGRect) ->UIImage{

        //將UIImage轉換成CGImageRef

        let sourceImageRef:CGImage = imageFromImage.cgImage!


        //按照給定的矩形區域進行剪裁
        //        CGImageRef newImageRef = CGImageCreateWithImageInRect(sourceImageRef, rect);

        let newImageRef:CGImage = sourceImageRef.cropping(to: inRext)!
        //將CGImageRef轉換成UIImage
        //        UIImage *newImage = [UIImage imageWithCGImage:newImageRef];
        let img:UIImage = UIImage.init(cgImage: newImageRef)
        
        //返回剪裁後的圖片
        return img

    }