Анимация с использованием gif - Visual Basic .NET

Узнай цену своей работы

Формулировка задачи:

Искал, но не нашел (возможно и не там искал) - как реализовать анимированный gif? Покадрово с таймером - понятно. Буду признателен за идею.

Решение задачи: «Анимация с использованием gif»

textual
Листинг программы
Private animatedImage As New Bitmap("G:\при меры\images\1.gif")
    Private currentlyAnimating As Boolean = False
 
    Public Sub AnimateImage()
        If Not currentlyAnimating Then
            ImageAnimator.Animate(animatedImage, New EventHandler(AddressOf Me.OnFrameChanged))
            currentlyAnimating = True
        End If
    End Sub
 
    Private Sub OnFrameChanged()
        Me.Invalidate()
    End Sub
 
    Private Sub Form1_Paint(ByVal sender As Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles Me.Paint
        AnimateImage()
        ' Получим следующий кадр. 
        ImageAnimator.UpdateFrames()
        e.Graphics.DrawImage(Me.animatedImage, New Point(130, 30))
 
 
        'Останавливаем(анимацию)
        'ImageAnimator.StopAnimate(animatedImage, AddressOf Me.OnFrameChanged)
    End Sub
 
 
    Dim Im As Bitmap = Image.FromFile("D:\разное\VS2008ImageLibrary\Animations\globeGIFanime.gif")
    Dim tmpIm_ As New Imaging.FrameDimension(Im.FrameDimensionsList(0))
 
        For i As Integer = 0 To Im.GetFrameCount(tmpIm_) - 1
            Im.SelectActiveFrame(tmpIm_, i)
            Im.Save(String.Format("C:\{0}.bmp", i), Imaging.ImageFormat.Bmp)
        Next

Оцени полезность:

14   голосов , оценка 3.571 из 5
Похожие ответы