gpt4 book ai didi

ios - Swift - 从图像创建 GIF 并将其转换为 NSData

转载 作者:搜寻专家 更新时间:2023-10-31 21:47:13 25 4
gpt4 key购买 nike

这可能是一个业余问题,但尽管我广泛地搜索了 Stack Overflow,但我无法得到针对我的特定问题的答案。

我按照 Github 示例成功地从一组图像创建了一个 GIF 文件:

func createGIF(with images: [NSImage], name: NSURL, loopCount: Int = 0, frameDelay: Double) {

let destinationURL = name
let destinationGIF = CGImageDestinationCreateWithURL(destinationURL, kUTTypeGIF, images.count, nil)!

// This dictionary controls the delay between frames
// If you don't specify this, CGImage will apply a default delay
let properties = [
(kCGImagePropertyGIFDictionary as String): [(kCGImagePropertyGIFDelayTime as String): frameDelay]
]


for img in images {
// Convert an NSImage to CGImage, fitting within the specified rect
let cgImage = img.CGImageForProposedRect(nil, context: nil, hints: nil)!

// Add the frame to the GIF image
CGImageDestinationAddImage(destinationGIF, cgImage, properties)
}

// Write the GIF file to disk
CGImageDestinationFinalize(destinationGIF)
}

现在,我想将实际的 GIF 转换为 NSData,这样我就可以将它上传到 Firebase,并能够在另一台设备上检索它。

为了实现我的目标,我有两个选择:要么找到如何使用上面的代码提取创建的 GIF(这似乎是在创建文件时直接创建的),要么使用函数参数上的图像来创建一个新的 GIF,但保持 NSData 格式。

有没有人知道如何做到这一点?

最佳答案

由于超过六个月没有人继续前进,我将把@Sachin Vas 评论中的答案放在这里:

您可以使用 NSData(contentsOf: URL) 获取数据

关于ios - Swift - 从图像创建 GIF 并将其转换为 NSData,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40936389/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com