如何使用的BitmapEncoder产生,当我在做一个循环重复GIF [英] How do I make a GIF repeat in loop when generating with BitmapEncoder
问题描述
我能够使用的BitmapEncoder(C#,WinRT的)来创建一个gif动画。不过,我一直无法弄清楚如何使GIF回环从头开始?
I am able to use BitmapEncoder (C#, WinRT) to create an animated gif. However, I haven't been able to figure out how to make the GIF loop back and start from scratch?
因为我不知道该怎么没太大尝试尝试。搜索更多性能上的GIF设置,但找不到任何相对的。
Didn't try much because I am not sure what to try. Searched for more properties to set on the GIF, but could not find anything relative.
推荐答案
好吧,终于能够看着办吧出。显然,你需要将以下metdata添加到GIF得到它的循环:
Okay, finally been able to figure it out. Apparently you need to add the following metdata to the GIF to get it to loop:
BitmapPropertySet properties = await encoder.BitmapProperties.GetPropertiesAsync("/appext/Data");
properties = new BitmapPropertySet()
{
{
"/appext/Application",
new BitmapTypedValue(Iso8859.Default.GetBytes("NETSCAPE2.0"), Windows.Foundation.PropertyType.UInt8Array)
},
{
"/appext/Data",
new BitmapTypedValue(new byte[] { 3, 1, 0, 0, 0 }, Windows.Foundation.PropertyType.UInt8Array)
},
};
await encoder.BitmapProperties.SetPropertiesAsync(properties);
如果你没有在你的项目有ISO8859,只需将用于NETSCAPE2的ASCII码。 0作为有一个字节数组。
If you don't have an Iso8859 in your project, simply place the ascii code for "NETSCAPE2.0" as a byte array in there.
这篇关于如何使用的BitmapEncoder产生,当我在做一个循环重复GIF的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!