0

我正在尝试从 CGDataProviderRef 创建一个 CGImageSourceRef。CGDataProviderRef 来自使用 UIGraphicsGetImageFromCurrentImageContext 创建的 UIImage。当我这样做并检查图像源的状态时,它返回 kCGImageStatusUnknownType。

我试过用 kCGImageSourceTypeIdentifierHint 给它一个提示,但无济于事。

有谁知道我如何创建这个 CGImageSource?

谢谢!

4

1 回答 1

2

你告诉源你给它PNG数据,但你不是。您从函数中获得CGImageGetDataProvider数据提供者提供原始像素数据,而不是某种外部格式的数据。

CGImageSource 的目的是将某些外部格式(例如 PNG)的数据解码为 CGImage。它不能处理像素数据;当您有像素数据时,您可以直接从中创建 CGImage。当然,鉴于您已经拥有最终图像,我不确定您为什么还要尝试从任何类型的数据再次创建它。

如果您想生成一些外部数据以随后(例如,在您释放此图像之后,可能在另一个进程中)由 CGImageSource 加载回,请使用CGImageDestination

于 2013-02-05T07:45:09.917 回答