我正在尝试将一个转换UIView
为一个UIImage
以保存到相册中。
到目前为止,我已经能够得到这个,但生成的图像是基于UIView
屏幕上的布局。(例如:纵向或横向)
我的目标是无论UIView
是纵向还是横向都具有相同的输出(例如:Square)。
这是我正在使用的当前代码(我尝试了很多不同的方法)
extension UIView {
func image() -> UIImage {
let imageRenderer = UIGraphicsImageRenderer(bounds: bounds)
if let format = imageRenderer.format as? UIGraphicsImageRendererFormat {
format.opaque = true
}
let image = imageRenderer.image { context in
return layer.render(in: context.cgContext)
}
return image
}
}
我可以将UIImage
尺寸更改为所需的尺寸,但UIView
仍然遵循屏幕上的原始布局。
let f = ergTrainChartView.frame; //Grab current
ergTrainChartView.frame = CGRect(x: f.origin.x, y: f.origin.y, width: 365, height: 365)
无论设备处于纵向还是横向(iPad 或 iPhone)模式,我的目标都是获得左侧图像。
谢谢。