将 UIView 转换为 UIImage 时添加对角线透明线

Diagonal transparent lines are added while converting UIView to UIImage

我正在尝试将包含 2 个 UIImageView 的 UIView 转换为 UIImage。几乎一切正常,但在最终转换时,最终的 UIImage 中显示了一些透明的对角线。我不明白为什么会这样。如果有人可以提供帮助。谢谢

extension UIView {
    /**
     Convert UIView to UIImage
     */
    func toImage() -> UIImage {
        UIGraphicsBeginImageContextWithOptions(self.bounds.size, self.isOpaque, 0.0)
        self.drawHierarchy(in: self.bounds, afterScreenUpdates: false)
        let snapshotImageFromMyView = UIGraphicsGetImageFromCurrentImageContext()
        UIGraphicsEndImageContext()
        return snapshotImageFromMyView!
    }
}

以下是保存图像前后 输入图像描述Before Saving保存后

我发现了问题,我的代码正在将生成的 UIImage 转换为质量为 0.70 的 Webp。那是在图像中添加线条。通过保存 jpg 然后转换为 webp 解决了问题。