animated gif to ani (cursor) file

Тема в разделе "WASM.HEAP", создана пользователем The Svin, 24 дек 2005.

  1. The Svin

    The Svin New Member

    Публикаций:
    0
    Регистрация:
    6 июл 2003
    Сообщения:
    665
    Адрес:
    Russia
    Есть простая лёгкая тулза чтобы делать сабж.?
     
  2. 0VERlord

    0VERlord New Member

    Публикаций:
    0
    Регистрация:
    28 ноя 2004
    Сообщения:
    8
    Адрес:
    Belarus
    Есть тута, но с ней бывают проблемы (результат отличается от оригинала).
     
  3. Madness

    Madness New Member

    Публикаций:
    0
    Регистрация:
    2 дек 2002
    Сообщения:
    23
    Дык эта, microangelo всякие есть, да ax-icons (ax-studio кажется сейчас называется).
     
  4. The Svin

    The Svin New Member

    Публикаций:
    0
    Регистрация:
    6 июл 2003
    Сообщения:
    665
    Адрес:
    Russia
    Спасибо, интересная программа. Но не могу добится от неё нужного формата.

    Попробую объяснить.

    Я раньше делал двигающиеся картинки в окошках таким простым способом.

    Создаёшь статик имидж-айкон контрол на окошке.

    В ресурсы кладёшь ani файл типа

    20 ANICURSOR DISCARDABLE "SKUL.ANI"

    Грузишь на старте окна ресурс с помощью

    LoadCursor

    И делаешь STM_SETIMAGE.

    Всё работало как надо.

    А вот с ani файлами которые создаёт программка T так не получается.

    Они грузятся если LoadCursorFromFile а LoadCursor из ресурса не грузятся.

    Я конкретно нашёл свинью танцующую в gif.

    Хочу её в ресурс как ani положить, ресурс из файла созданного T не грузится.

    Вот свинья. Кто-то может её довести до ресурсо переваниваемости?



    [​IMG] _1139076106__index.gif
     
  5. Quantum

    Quantum Паладин дзена

    Публикаций:
    0
    Регистрация:
    6 янв 2003
    Сообщения:
    3.143
    Адрес:
    Ukraine
    The Svin



    Размер не 32х32.



    Я бы достал фреймы из анимации (их там 3 или 4), загнал в ресурсы как bmp, создал таймер (600мс - 1с) и обновлял бы циклически картинку. ImageList тут немного сокращает кол-во строк кода. Либо простейший AVI, хотя лучше таймер :)



    Сделать пример из хрячка?
     
  6. The Svin

    The Svin New Member

    Публикаций:
    0
    Регистрация:
    6 июл 2003
    Сообщения:
    665
    Адрес:
    Russia
    AVI не хочу, таймер с BMP не хочу. 32х32 тоже не грузит.

    А другие нестандартных размеров грузит.

    Хочу чтоб грузило ANI и научится как из негрузящихся ANI делать грузящиеся.
     
  7. Quantum

    Quantum Паладин дзена

    Публикаций:
    0
    Регистрация:
    6 янв 2003
    Сообщения:
    3.143
    Адрес:
    Ukraine
    The Svin



    Хвалю ;)





    Обоснуйте. Система отмеряет паузы для отрисовки фреймов циклическим вызовом GetTickCount, что ни чуть не лучше таймера.





    И не удивительно. Подобное использование анимированного курсора - изврат.



    На всякий случай, аттачу пример.

    [​IMG] 110253382__svin.rar
     
  8. The Svin

    The Svin New Member

    Публикаций:
    0
    Регистрация:
    6 июл 2003
    Сообщения:
    665
    Адрес:
    Russia


    Я то ведь не включаю этот код.

    Приложение моё легче. И программировать мне его проще.



    Подобные высказывания - демогогия.

    Обменялись мнениями типа "сам дурак" :)



    Quantum ну при всём уважении, знаю я как с анимированной графикой по другому работать, у меня конкретный вопрос. Почему одни ani грузятся а почему другие не грузятся и что нужно сделать чтоб грузились.

    Тут дело то не в том как использовать курсор.

    Его к примеру можно использовать и по назначению - как курсор мыши. А как сделать файл валидного для ресурсов ani курсора. Как его использовать - другая уже тема.
     
  9. Quantum

    Quantum Паладин дзена

    Публикаций:
    0
    Регистрация:
    6 янв 2003
    Сообщения:
    3.143
    Адрес:
    Ukraine
    The Svin



    Полноцветные анимированные курсоры не поддерживаются старыми виндами (95, 98... без Plus что-ли). Их даже можно где-то отключить в реестре в Me. Про 2к и XP не могу ничего сказать. Тем не менее, вы же хотите, чтобы ваши обучалки и на 95й, и на 98й, и на Me винде работали?



    Демагогией никогда не интересовался.





    Ваш ANI раз в 5 тяжелее моего BMP, т.к. там 24-битная палитра. Кстати, можно ещё и RLE включить!
     
  10. The Svin

    The Svin New Member

    Публикаций:
    0
    Регистрация:
    6 июл 2003
    Сообщения:
    665
    Адрес:
    Russia


    В обучалках вообще всё ручками (GDIными) рисуется :)



    Не совсем правильно. Не под "старыми \ новыми" а

    под 9х - неработает

    под NT - работает.

    Первые NT старее 95ой.







    Ой ну не так это - но отвечать ломает :)

    Ну понял я позицию, только вопрос то (в 3ий раз) - как сделать валидные для ресурсов курсоры. Вот нельзя ли если что есть сказать - то сказать по этой теме. Please :)
     
  11. The Svin

    The Svin New Member

    Публикаций:
    0
    Регистрация:
    6 июл 2003
    Сообщения:
    665
    Адрес:
    Russia
    Посмотрел файл. Свин замечательно скачет :)

    Спасибо.
     
  12. Quantum

    Quantum Паладин дзена

    Публикаций:
    0
    Регистрация:
    6 янв 2003
    Сообщения:
    3.143
    Адрес:
    Ukraine
  13. Quantum

    Quantum Паладин дзена

    Публикаций:
    0
    Регистрация:
    6 янв 2003
    Сообщения:
    3.143
    Адрес:
    Ukraine
    The Svin



    Это заслуживает похвалы и уважения, также как и сами обучалки.





    Как бы покорректней выразиться?.. Ну, то, что вы написали ещё дальше от истины. ANI могут работать и на 95й, в определённых условиях, которые можно уточнить в SDK. И на первых NT (3.5, 4) могут не работать, если адаптер слабый.





    Про размер эта реплика. Вы знаете, что ANI не сильно отличается от AVI? Надеюсь, вы поняли намёк, т.к. меня тоже ломает расписывать тут подробности.





    Я лично делаю их ручками: paint + aniedit (это из SDK 95й винды ещё :) + хексредактор для сжатия 24бит -> 4бит, т.к. paint портит палитру. А невалидные ресурсы можно делать любым попсовым редактором, каких море.
     
  14. The Svin

    The Svin New Member

    Публикаций:
    0
    Регистрация:
    6 июл 2003
    Сообщения:
    665
    Адрес:
    Russia


    Здорово.

    И чем ты сделал такой чудный ani?
     
  15. Quantum

    Quantum Паладин дзена

    Публикаций:
    0
    Регистрация:
    6 янв 2003
    Сообщения:
    3.143
    Адрес:
    Ukraine


    Microsoft Animated Cursor Editor Version 3.5 (c) 1995

    Могу поделиться, если надо (18Кб).



    ЗЫ: Особенно прикольно свинка танцует под трекерскую музыку :)))
     
  16. The Svin

    The Svin New Member

    Публикаций:
    0
    Регистрация:
    6 июл 2003
    Сообщения:
    665
    Адрес:
    Russia


    Надо, поделись, пожалуйста.



    Да не знаю я толком нифига :)

    Мне просто попадались интересные ani и небольшого размера.

    Вот маленького размера выполняющие подобную работу avi - непопадались. А форматы - не знаю.







    Имеется ввиду под "работать" - их тоже можно статик image\icon присобачивать через SETIMAGE?



    Адаптер был у меня в NT 4 SVGA Trio за три копейки 1м памяти всего, и всё одно черепа крутились. Ещё слабее должен быть?
     
  17. Quantum

    Quantum Паладин дзена

    Публикаций:
    0
    Регистрация:
    6 янв 2003
    Сообщения:
    3.143
    Адрес:
    Ukraine


    В аттаче. Фреймы должны быть в формате ICO либо CUR. Их можно создавать в редакторе ресурсов Visual Studio, утилитой IMAGEDIT.EXE, которая с masm32 поставляется... ну, и любым попсовым редактором тоже можно.





    Размер нормального ANI = размер одного непожатого CUR-фрейма * кол-во фреймов + размер RIFF-контейнера. Этот размер в любом случае будет больше сплошного битмапа, хотябы из-за дублирования палитры и из-за маски прозрачности. Размер ненормального ANI может равнятся, к примеру, размеру того же GIF + размер RIFF-оболочки :)





    Под "работать" я подразумевал использование по прямому назначению, т.е. в качестве курсора.





    На VGA с использованием стандартного виндового драйвера не крутились. На тестовой машине тогда у меня стояла именно NT4. ANI был Ч/Б и стандартного размера 32х32.

    [​IMG] 2021934537__ANIEDIT.rar
     
  18. The Svin

    The Svin New Member

    Публикаций:
    0
    Регистрация:
    6 июл 2003
    Сообщения:
    665
    Адрес:
    Russia


    Погоди, а из исходного файла (gif) ты чем доставал фреймы?

    Меня всё ещё волнует как преобразовать анимационный gif в курсор. Я попробывал программу Take One у меня легко получился ani курсор, но он не валидный (не грузится через ресурсы) тем более произошли и изменения в размере. У тебя же в программе ani полученный из этого gif и валидный и размер тот же. Мне вот эта стадия непонятна как: из gif во что то что или само по себе уже ani или годные фреймы для ani.
     
  19. Quantum

    Quantum Паладин дзена

    Публикаций:
    0
    Регистрация:
    6 янв 2003
    Сообщения:
    3.143
    Адрес:
    Ukraine
    1. Редактором анимированных GIF (у меня Ulead GIF Animator 5) экспортировал все фреймы в серию отдельных PNG.

    2. С помощью Paint сконвертировал полноцветные PNG (24 бит) в 16-цветные BMP (4-бит). Это существенно сжимает размер.

    3. Сконвертировал BMP в CUR прямо в редакторе Visual Studio 6.

    4. Скорректировал палитру с помощью WinHex, т.к. цвета сильно исказились из-за отстойности Paint.

    5. Собрал все CUR воедино с помощью ANIEDIT.



    Пункты 2 и 4 можно опустить, если не важен размер конечного ANI.
     
  20. The Svin

    The Svin New Member

    Публикаций:
    0
    Регистрация:
    6 июл 2003
    Сообщения:
    665
    Адрес:
    Russia
    Спасибо Quantum