Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

отрисовка TGIFImage

9.3K
17 ноября 2005 года
bobm12345
4 / / 17.12.2004
Подскажите плиз:
использую TGIFImage от Anders Melander (v 7)
в BCB6,
при простой загузке gif файла в TImage все нормально, но притормаживает интерфейс программы , когда несколько анимированных гифов.
Пытался запустить каждый гиф в своем потоке, там есть функция Paint,рисую на PaintBoxe, запускается и можно остановить , но плохое качество отрисовки , если требуется масштабирование, вроде все варианты опций перепробовал. Может, кто сталкивался ?
Запускаю вот таким образом:

TGIFImage *gif;
TGIFPainter *t;

gif = new TGIFImage();
gif->LoadFromFile("tehn.gif");
gif->ThreadPriority = tpIdle;
TGIFDrawOptions opt;
opt << goAsync << goAnimate << goLoop << goLoopContinously << goDirectDraw << goDither << goAutoDither << goTransparent << goClearOnLoop;
t = gif->Paint(PaintBox1->Canvas, Rect(0,0,PaintBox1->Width,PaintBox1->Height), opt);

Отображается, можно остановить t->Stop();
Но качество жуткое,если размер гифа и пейнтбокса различны
А если просто считать gif в компонент TImage,то и рисуется и масштабируется нормально,а это ведь тот же TGIFImage отрисовывает
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог