Может ли библиотека ImageEn работать с gif- и png-анимацией?

svnvlad
Дата: 05.05.2011 17:45:57
Может ли библиотека ImageEn работать с gif- и png-анимацией?
svnvlad
Дата: 05.05.2011 17:55:00
Разработан целый компонент для работы с картинками, для автоматического формирования превьюшек нужного размера и выгрузки их на сайт. Все это на основе TImageEn. Но к сожалению gif-анимированные картинки не работают. Есть ли способ заставить их работать, оставив TImageEn. Очень уж муторно все опять переделывать. А если нет, то какие компоненты лучше использовать?
Кроик Семён
Дата: 05.05.2011 18:01:59
TImageEnMIO can load animated GIF, multi-image TIFF, AVI and acquire multi-page from TWain scanners.
It can also save animated GIF, multi-images TIFF and AVI.
svnvlad
Дата: 21.05.2011 12:15:19
Все заработало. Но остается вопрос:
Чтобы заработал этот самый TImageEnMView в режиме мультипликации, нужно задать
ImageEnMView1.Playing := true;
Так вот, на той форме, где я размещаю компонент в режиме конструктора, мультипликация работает, а там, где создаю и размещаю программно, показывает только неподвижную картинку.
Вот код:
FImage - компонент TImageEnView, уже размещенный на форме. В случае работы с анимированным гиф программно создаем компонент TImageEnMView на том же месте, где был TImageEnView, и делаем его видимым, а тот невидимым.
 
// Создаем анимационный компонент по параметрам обычного
  FImageAnim := TImageEnMView.Create(FImage.Owner);
  FImageAnim.Hide;
  FImageAnim.Parent := FImage.Parent;
  FImageAnim.Left := FImage.Left;
  FImageAnim.Width := FImage.Width;
  FImageAnim.Top := FImage.Top;
  FImageAnim.Height := FImage.Height;
  FImageAnim.Align := FImage.Align;
  FImageAnim.Ctl3D := false;
  FImageAnim.BackgroundStyle := iebsChessBoard;
  FImageAnim.DisplayMode := mdSingle;//mdGrid;
  FImageAnim.ThumbnailResampleFilter := rfLanczos3;
  FImageAnim.StoreType := ietNormal;
  FIO.AttachedMView := FImageAnim;
  FImageAnim.Playing := true;

Вот в нем анимация не осуществляется. А на другой форме размещен из палитры компонентов, там картинка бегает.
У меня есть одно предположение, хотя не должно быть... Может ли так быть из-за того, что на той форме, где бегает, компонент размещен практически сразу на форме, а здесь, где не бегает - под ним еще несколько вещей - TRzGridBox, TPanel, TRzGroupBox?
svnvlad
Дата: 21.05.2011 12:17:47
Затем после загрузки картинки в анимированный компонент:
  FImage.Hide;
  FImageAnim.Show;
  FImageAnim.Playing := true;
svnvlad
Дата: 21.05.2011 12:19:04
... забыл добавить.
Соколинский Борис
Дата: 21.05.2011 13:49:32
PNG не поддерживает мультифрейм, и png-анимаций не бывает.
fd00ch
Дата: 21.05.2011 16:53:44
ТС имел в виду APNG. Неплохой формат, который, к сожалению, не смог раскрутиться в интернетах..
svnvlad
Дата: 21.05.2011 20:25:23
Да, наверно. В инете не смог найти ни одной png-анимированной картинки.
Так что вопрос с png закрыт. Остается gif...
svnvlad
Дата: 21.05.2011 20:26:00
который таки не хочет работать так как надо...