我正在尝试使用核心图片将我的自定义UIView
转换为UIImage
,但有时会变为黑色,我的整个UIImage
看起来像黑色图像。
我注意到,如果UIView
的高度超过4096,无论宽度是多少,那么生成的UIImage
将为黑色!
注1:我的自定义UIView
是从nib文件加载的。
这是我的代码:
func getImageWithScale(_ scale: CGFloat) -> UIImage {
let size = self.bounds.size.applying(CGAffineTransform(scaleX: scale, y: scale))
UIGraphicsBeginImageContextWithOptions(size, true, 1)
self.drawHierarchy(in: CGRect(origin: CGPoint.zero, size: size), afterScreenUpdates: true)
let image = UIGraphicsGetImageFromCurrentImageContext()
UIGraphicsEndImageContext()
return image!
}