C # gif Изображение в MemoryStream и обратно (потеря анимации)

У меня небольшая проблема, и я не нахожу никаких решений. Я хочу преобразовать GIF в байт [], а затем обратно в GIF. Я отлично работаю, но теряю анимацию.

Это совершенно анимированный GIF, когда я начинаю (я показываю его вPictureBox элемент). Но после конвертации я застреваю с первым кадром.

HttpWebRequest httpWebRequest = (HttpWebRequest)HttpWebRequest.Create("creativetechs.com/i/tip_images/ExampleAnimation.gif");
HttpWebResponse httpWebReponse = (HttpWebResponse)httpWebRequest.GetResponse();
Stream stream = httpWebReponse.GetResponseStream();
Image img = Image.FromStream(stream);

MemoryStream ms = new MemoryStream();
img.Save(ms,img.RawFormat);
byte [] bytes = ms.ToArray();
Image img2 = Image.FromStream(new MemoryStream(bytes));

int frames1 = img.GetFrameCount(System.Drawing.Imaging.FrameDimension.Time);
int frames2 = img2.GetFrameCount(System.Drawing.Imaging.FrameDimension.Time);

Я также пытался использовать не RawFormat, ноSystem.Drawing.Imaging.ImageFormat.Gif, Ничего не изменилось.frames1 правильное количество кадров.frames2 это 1.

у меня есть 2PictureBox элементы в моем GUI. Один показimg и другиеimg2, Ноimg2 пока не анимированimg является. Что случилось?

Я также попытался использовать сериализацию вместо того, чтобы создать свой байт [].

Я сериализовал изображение и снова десериализовал его, и он тоже ничего не изменил. Как это возможно?

Ответы на вопрос(2)

Ваш ответ на вопрос