| Alexandr Kiss |
01.10.2010 00:46 |
Преоладер для gif
Здравствуйте. Волнует часто встречаемая проблема (как я понял лазив 2 дня по сайтам в поисках ответа) - есть банер в гиф, но он занимает больше места, чем разрешает сайт (150Кб, сайт разрешает только 35Кб). Уменьшить размер можно только посредством уменьшения качества картинки, что исключено (реклама должна быть качественной - как по мне). Немного знаком с флеш и AS3 (уровень: ниже начинающего, но с основами знаком) - знаю, что можно организовать SWF, который не будет содержать саму картинку, а будет ссылатся на нее (благодаря чему, картинка сохранит прежнее качество, а сайт приймет флешку занимающая 15Кб). Сначала искал возможность организвовать это через AS3 и xml (на форумах все дают ответ типа: используй такой то класс или что то типа того, что мне не о многом говорит), но случайно нашел решение на одном сайте с использованием AS2 и без подключения xml (флешка напрямую ссылается на картинку), но проблема в том, что пример годится только для jpg картинок.
Вот пример найденый мной:
Код AS1/AS2:
// Создаём прелоадер
F_preloader = function (mc) {
_root.createEmptyMovieClip("detect_mc", 10000);
// Создаём мувик для отслеживания загрузки
_root.createTextField("tf_txt", 11111, 10, 10, 150, 20);
// Создаём текстовое поле для последующего вывода результатов загрузки:
detect_mc.onEnterFrame = function() {
var gbl = _root[mc].getBytesLoaded();
var gbt = _root[mc].getBytesTotal();
if (gbl == gbt && gbl>50) {
// Если всё загрузилось
tf_txt.text = "100%";
removeMovieClip(this);
// Удаляем наш мувик detect_mc за ненадобностью
} else {
// Если не загрузилось, то отображаем процент загрузки
tf_txt.text = int(gbl/gbt*100)+"%";
}
};
};
// Создаём пустой мувик-контейнер для подгрузки
_root.createEmptyMovieClip("container_mc", 1);
container_mc.loadMovie("test_image.jpg");
// Запускаем функцию прелоадера и передаём ей мувик, в который грузим
F_preloader("container_mc");
Прошу помочь переделать этот пример под gif или же обьяснить как сделать по другому.
|