Canvas - это круто! - страница 39

 
Ilyas:

Ридеры GIF и PNG уже были тут https://www.mql5.com/ru/forum/92113#comment_2672596

Судя по функционалу - это "распаковщик" формата. Предназначен для чтения данных из файла .gif. Для завершения портирования, нужно дописать функционал воспроизведения на MQL с помощью класса Ccanvas.  

ЗЫ. Ну да... Ридер ведь.

 
Dmitry Fedoseev:

...

Это вы автор портированного ридера? 
 
нет
 
Dmitry Fedoseev:
нет
Если знаете Зорро, передайте ему, что он молодец и пусть попробует закончить портирование написав алгоритм воспроизведения на MQL. Сложно ему будет из 19-го века, но пусть попробует.))
 
Реter Konow:

Специально для Петра :) не поленился!


Файлы:
show_gif.ex5  2989 kb
 
Yury Kulikov:

Специально для Петра :) не поленился!


Спасибо. Это ведь не перебор кадров .bmp сжатых командой #resource? ))) Точно нет. Это натуральный, дописанный за пару часов адаптер воспроизведения гиф-файла на MQL-канвасе, на основе портированного .gif-ридера. Я наверное, на идиота похож со стороны.)))

Юрий, спасибо за демо, но такую штуку каждый может сделать. Легко.

  1. Берем обычный гиф. Записываем на видео. 
  2. Из видео получаем все его кадры. 
  3. Сохраняем кадры в формате .bmp под номерами.

  4. Интегрируем через #resource кадры в скрипт.

  5. Делаем цикл по кадрам и выводим их последовательно на канвас в бесконечном цикле.

В итоге, получаем псевдо-гиф, который не имеет отношение к воспроизведению стандартного гиф-формата в MQL-программах.

//-----------------------------

Добавлено:

Скажу, что у меня тоже "псевдо-гиф", но технология гораздо сложнее. В ней есть авторское сжатие и механизм воспроизведения. А главное, "псевдо-гифы" привязаны к своим элементам и воспроизводятся из общего массива. Сжатие получается лучше, чем через директиву #resource, потому что неизменные цвета из кадра в кадр не записываются.


 
Yury Kulikov:

Специально для Петра :) не поленился!


Юрий, Вы классный специалист. Примите участие в разработке решения для стандартных гифов на МКЛ.
 
Реter Konow:

Видимо по себе меряете людей.

Там в скрипте в ресурсах лежит gif, который я скопировал из поста Николая.

Может попробовать другой скрипт, где  gif-файл указывается в параметрах скрипта, файл должен находится в  папке Files. 

Файлы:
 
Ilyas:

Ридеры GIF и PNG уже были тут https://www.mql5.com/ru/forum/92113#comment_2672596

Ура, Спасибо!
Сэкономленное время - заработанное время.