OStack程序员社区-中国程序员成长平台

标题: ios - 如何在 Swift 中裁剪 UIImage? [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-12 22:00
标题: ios - 如何在 Swift 中裁剪 UIImage?

我想在 Swift 中编写一个函数,它可以获取图像并裁剪除中间的细水平线之外的所有内容。我不想保留纵横比。

这是我目前所拥有的,但它并没有按照我想要的方式工作。我只想保留从 y=276 到 y=299 的像素。

func cropImageToBars(image: UIImage) -> UIImage {

  let rect = CGRectMake(0, 200, image.size.width, 23)

  UIGraphicsBeginImageContextWithOptions(rect.size, false, 1.0)
  image.drawInRect(rect)
  let newImage = UIGraphicsGetImageFromCurrentImageContext()
  UIGraphicsEndImageContext()

  return newImage

}



Best Answer-推荐答案


您的代码向后执行此操作。 UIImage drawInRect() 方法将整个图像绘制到目标矩形中。把它想象成一个电影放大机或幻灯机。您可以调整将图像渲染到的框的大小和形状。您设置了一个图像上下文,它就像一段捕捉图像的电影。

您通常希望将图像渲染成一个与图像完全大小相同的矩形,并移动它的原点,以便原点为 0 的图像上下文捕获图像的所需位。

我有一个名为 CropImg 的演示项目 显示如何裁剪图像的一部分。它有一个用户界面,可以让用户选择图像的一部分。你的情况比较简单,但它应该给你的想法。

关于ios - 如何在 Swift 中裁剪 UIImage?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39282494/






欢迎光临 OStack程序员社区-中国程序员成长平台 (https://ostack.cn/) Powered by Discuz! X3.4