Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Decoder/Encoder (http://www.flasher.ru/forum/showthread.php?t=118119)

vorbiz 14.11.2008 22:22

Decoder/Encoder
 
Друзья. Для реализации одного из скриптов мне потребовались классы для работы с изображениями. BMPEncoder, GIFEncoder, JPGEncoder, PNGEncoder, BMPDecoder, GIFDecoder, JPGDecoder, PNGDecoder. Те, что зачёркнуты я уже откопал. А вот последние два оказались проблемой. Будьте добры, подскажите, существуют ли они в природе, или мне таки придётся их портировать из Java?

†‡Paladin‡† 14.11.2008 22:39

Флэш по дефолту держит PNG и JPG. В чем проблема?

etc 14.11.2008 22:42

А смысл указанных декодеров, если вы можете просто загрузить картинку в соответствующем формате?

vorbiz 14.11.2008 22:46

Смысл вот в чем: мне нужно дать возможность пользователю загрузить картинку во флеш. Делайется это классом FileReference. Он возвращает ByteArray. Всё бы ничего, но затем мне необходимо отобразить загруженную картинку во флешке. И, я так понимаю, делается это при помощи BitmapData. Мне эти классы нужны для конвертации ByteArray <> BitmapData и обратно. Декодеры мне помогают загружать картинки, а энкодеры = сливать на сервер. В общем, графический редактор картинок.
Если я начал мыслить в неверном направлении, поправьте меня, пожалуйста.

etc 14.11.2008 22:50

А метод loadBytes у Loader вам чем не угодил?
Я понимаю, там, кодеки, все дела, но декодеры-то зачем…

vorbiz 14.11.2008 22:56

Loader умеет только забирать фалы по указанному адресу. Мне нужна возможность выбора файла с пользовательской машины. loadBytes возвращает всё тот же ByteArray, закодированный в формате файл. Для отображания на канве флешки необходимо его преодразовать в BitmapData, который, как я понимаю, просто напросто, содержит двумерный массив пикселей.

etc 14.11.2008 23:03

Божей мой. Делаем select файла, получили бинарник, делаем loadBytes, ловим COMPLETE, делаем либо draw лоадера, либо, если content является Bitmap-ом, тягаем из него BitmapData.

vorbiz 14.11.2008 23:05

Не совсем понимаю, у Loader нет методов select и draw .

etc 14.11.2008 23:08

draw есть у BitmapData. А SELECT — событие у FileReference.

vorbiz 14.11.2008 23:13

Хорошо, а что указывать в качестве параметра loadBytes? Какой ресурс? draw у BitmapData позволяет передать в BitmapData данные первого параметра, IBitmapDrawable, ByteArray не предоставляет этот интерфейс. Вот тут я и столкнулся с проблемой декодирования.

Добавлено через 11 минут
Оп, кажется я понял, спасибо огромное. Разбирусь теперь с тем, что скрипт не может найти fl.containers.UILoader.


Часовой пояс GMT +4, время: 12:09.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.