2

我一直在研究使用 CGImageDestinationRef 创建 gif 文件,但找不到任何文档,说明我应该使用 CGImageDestinationSetProperties 应用哪些属性,以及在使用 CGImageDestinationAddImage 将图像添加到 CGImageDestination 对象时应该设置哪些属性。

但我意识到这个问题不仅仅适用于将图像文件导出为 GIF 文件。

我查看了 CGImageSource 返回的一些属性,尽管这提供了一些线索,但它是命中注定的。但例如,似乎 HasGlobalColorMap 和 LoopCount 应该是使用 CGImageDestinationSetProperties 设置的属性,而 UnclampedDelayTime 和 DelayTime 是应该在添加图像时设置的属性。

我在指导我应该直接将哪些属性添加到 CGImageDestinationRef 以及添加图像时应该添加哪些属性?

谢谢

4

1 回答 1

2

我希望 Apple 在解释这些小细节方面做得更好。我也在为此挠头。

查看图像 I/O 编程指南示例,所有属性都是使用单个图像设置的CGImageDestinationAddImage(尽管那里的描述确实与此相矛盾......)。

CGImageProperties Reference中有一个列表,列出了 和 使用的所有(?)可能的CGImageDestinationSetPropertiesCGImageDestinationAddImage。它区分了单个图像键、格式特定键和“图像源容器属性”(只有一个键):

图像源容器属性

一般适用于容器的属性,但不一定适用于容器中的任何单个图像。

它暗示(并通过随机抽样试验支持错误)所有其他键应使用带有CGImageDestinationAddImage.

于 2014-01-21T14:49:12.023 回答