微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

从 UIView 拍摄快照并转换为 MSSticker 质量下降

如何解决从 UIView 拍摄快照并转换为 MSSticker 质量下降

我正在尝试将 UIView 转换为 Mssticker,但最终的贴纸质量下降了很多。

要做的是:

  • 我从视图中截取了快照(我怀疑是这里的问题)
  • 将其转换为 UIImage
  • 从图像文件 URL 创建一个 Mssticker
extension UIView {
    func asImage() -> UIImage {
        let renderer = UIGraphicsImageRenderer(bounds: bounds)
        return renderer.image { rendererContext in
            layer.render(in: rendererContext.cgContext)
        }
    }
}
func saveImagetoSharedGroup(data: Data,fileName: String) {
        let fileManager = FileManager.default
        let url = fileManager.containerURL(forSecurityApplicationGroupIdentifier: DataModel.appGroupId)?.appendingPathComponent("\(fileName).png")
        let image =  UIImage(data: data)

        if !fileManager.fileExists(atPath: url!.path),let imageData = image?.pngData() {
            fileManager.createFile(atPath: url!.path as String,contents: imageData,attributes: nil)
        }
    }
let sticker = try? Mssticker(contentsOfFileURL: url!,localizedDescription: "")

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。