gpt4 book ai didi

ios swift - 使用图像截断缩放图像

转载 作者:行者123 更新时间:2023-11-28 08:41:49 26 4
gpt4 key购买 nike

我将图像传递给此方法以缩放我的图像并返回一个非水平图像,该图像将保存在文档目录中;然而,该方法以某种方式截断了图像侧面的四分之一英寸。

请指教..

   func scaleImageWithImage(image: UIImage, size:CGSize)-> UIImage{
let scale:CGFloat = max(size.width/image.size.width, size.height/image.size.height)
let width: CGFloat = image.size.width * scale
let height: CGFloat = image.size.height * scale
let imageRect: CGRect = CGRectMake((size.width-width)/2.0, (size.height - height) / 2.0, width, height)

UIGraphicsBeginImageContextWithOptions(size, false, 0)
image.drawInRect(imageRect)
let newImage: UIImage = UIGraphicsGetImageFromCurrentImageContext()
UIGraphicsEndImageContext()

return newImage
}

最佳答案

您正在绘制矩形 imageRect,但图形上下文本身的大小为 size。因此,如果 size 小于 imageRect.size,您就会在边缘丢失一些信息。此外,imageRect 并不是从 0,0 开始的——它的起点是 (size.width-width)/2.0, (size.height-height)/2.0 — 因此,如果它的原点从原点向正方向移动,您将在另一侧有空白区域,如果它从原点向负方向移动,您将在 那个 边缘丢失一些信息.

关于ios swift - 使用图像截断缩放图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36341040/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com