Swift 裁剪图像以移除底部
Swift cropping an image to remove bottom part
这是我要裁剪的图片(去掉底部的选项。Back、Draw 和 Delete 是实际的菜单项,上面的是图片的一部分
这是改变 y: 100 和高度 : 1948 的结果
我想删除图像底部的 100 个坐标。我的应用程序在 iPad 上,所有图像都是水平保存的。
这段代码是我在类似问题上从堆栈溢出中获取的代码,但是它不适用于 x、y、宽度和高度的任何值。图像永远不会从底部裁剪。
更改值往往只会从左侧和右侧裁剪图像(iPad 的 1536 像素部分而不是 2048)
func cropImage(image: UIImage) -> UIImage {
let rect = CGRect(x: 0, y: 0, width: 1536, height: 2048) // 1536 x 2048 pixels
let cgImage = image.cgImage!
let croppedCGImage = cgImage.cropping(to: rect)
return UIImage(cgImage: croppedCGImage!)
}
有谁知道少了什么?我只需要它来裁剪底部部分,因为图像是以前视图的保存(但是菜单选项出现在底部的 a=stack 视图中,当我保存图像时它仍然存在,因此裁剪。谢谢
您发布的 "image I wish to crop" 图片是 2048 x 1536 像素...
如果你想裁剪 "bottom 100 pixels" 你的裁剪矩形应该是
CGRect(x: 0, y: 0, width: 2048, height: 1536 - 100)
这是我要裁剪的图片(去掉底部的选项。Back、Draw 和 Delete 是实际的菜单项,上面的是图片的一部分
这是改变 y: 100 和高度 : 1948 的结果
我想删除图像底部的 100 个坐标。我的应用程序在 iPad 上,所有图像都是水平保存的。 这段代码是我在类似问题上从堆栈溢出中获取的代码,但是它不适用于 x、y、宽度和高度的任何值。图像永远不会从底部裁剪。 更改值往往只会从左侧和右侧裁剪图像(iPad 的 1536 像素部分而不是 2048)
func cropImage(image: UIImage) -> UIImage {
let rect = CGRect(x: 0, y: 0, width: 1536, height: 2048) // 1536 x 2048 pixels
let cgImage = image.cgImage!
let croppedCGImage = cgImage.cropping(to: rect)
return UIImage(cgImage: croppedCGImage!)
}
有谁知道少了什么?我只需要它来裁剪底部部分,因为图像是以前视图的保存(但是菜单选项出现在底部的 a=stack 视图中,当我保存图像时它仍然存在,因此裁剪。谢谢
您发布的 "image I wish to crop" 图片是 2048 x 1536 像素...
如果你想裁剪 "bottom 100 pixels" 你的裁剪矩形应该是
CGRect(x: 0, y: 0, width: 2048, height: 1536 - 100)