Qt отображает прозрачный анимированный GIF

Я хочу отобразить анимированное GIF-изображение в Qt.

Используя QMovie и QLabel, он может отображать изображение на экране. Однако gif имеет эффект поблескивания: предыдущие кадры не исчезали, поэтому они перекрывались с кадрами после них.

Как я могу отобразить анимированный GIF прозрачный фон без этой проблемы в QT? Надеюсь, кто-то может помочь мне решить эту проблему!

3

Решение

Похоже, проблема в анимации GIF, а не в Qt. В GIF кадры имеют тип «заменить» или «объединить». С помощью функции «Объединить» новый кадр добавляется поверх текущего представления, поэтому вы видите предыдущее изображение там, где оно прозрачное. И, вероятно, ваш GIF сделан только из «совмещенных» кадров.

Вы должны попытаться изменить анимацию GIF. Я не знаю, какой инструмент вы используете для создания ваших GIF-анимаций. Опции разные в разных инструментах. Они похожи: «заменить», «сложены» и «не распоряжаться».

2

Другие решения