Ios 将图像缩放到1/4大小(swift3)
我正在尝试将我的图片缩放到较小的尺寸。我正在努力使它成为当前大小的1/4。测试使用bezierPath缩放图像的效果。理想情况下,我希望我的图片显示在左下角,大小为当前大小的1/4Ios 将图像缩放到1/4大小(swift3),ios,swift3,uiimageview,scale,uibezierpath,Ios,Swift3,Uiimageview,Scale,Uibezierpath,我正在尝试将我的图片缩放到较小的尺寸。我正在努力使它成为当前大小的1/4。测试使用bezierPath缩放图像的效果。理想情况下,我希望我的图片显示在左下角,大小为当前大小的1/4 import UIKit extension UIImageView { func addMask(_ bezierPath: UIBezierPath) { let pathMask = CAShapeLayer() pathMask.path = bezierPath.cgPath
import UIKit
extension UIImageView {
func addMask(_ bezierPath: UIBezierPath) {
let pathMask = CAShapeLayer()
pathMask.path = bezierPath.cgPath
layer.mask = pathMask
}
}
let myPicture = UIImage(data: try! Data(contentsOf: URL(string:"https://a248.e.akamai.net/secure.meetupstatic.com/photos/member/5/3/5/e/highres_260901342.jpeg")!))!
let iv = UIImageView(image: myPicture)
let bezierPath = UIBezierPath()
bezierPath.move(to: iv.center)
bezierPath.addLine(to: CGPoint(x: iv.frame.maxY, y: 0))
bezierPath.addLine(to: CGPoint(x: iv.frame.maxX, y: iv.frame.maxY))
bezierPath.addLine(to: CGPoint(x: 0, y: iv.frame.maxY))
bezierPath.addLine(to: .zero)
bezierPath.close()
iv.addMask(bezierPath)
该代码输出此图像。
您希望在这里得到什么结果?黑色三角形之所以存在,只是因为在零之前缺少一个额外的点bezierPath.addLine(to:CGPoint(x:iv.frame.maxY,y:0))。我只想将图像缩小到图像左下角的1/4大小。bezier路径仍然适用,但不应看到,因为该路径不与Pitchure重叠。我只是想看看这是否有效。我只想缩小穿蓝色马球衫的人的形象。