Загрузка изображения, draw не работает с uiloader

Обсуждение и помощь по вопросам взаимодействия с ВКонтакте API в Flash-приложениях (ActionScript)
komar0ff
Сообщения: 12
Зарегистрирован: 26 июл 2012, 20:26

Загрузка изображения, draw не работает с uiloader

Сообщение komar0ff »

Пишу приложение, одной из функций которого будет загрузка изображения в альбом. Прочитал темы форума, получилось сохранять мувиклип в изображение. Но если в мувике есть uiloader, то ничего не работает, ошибается на этих строках:

Код: Выделить всё

var bmd:BitmapData=new BitmapData(imagesave.width,imagesave.height, false); bmd.draw(imagesave); var fileData:ByteArray = new JPGEncoder(100).encode(bmd);
Изображение подгружается со стороннего сервера, нормально отображается. Как это решить?
Alazaur
Разработчик
Разработчик
Сообщения: 1001
Зарегистрирован: 16 окт 2011, 20:25

Re: Загрузка изображения, draw не работает с uiloader

Сообщение Alazaur »

Вроде напрямую вызывать encode у JPGEncodera одновременно с созданием и установкой качества нельзя
Либо так:

Код: Выделить всё

var bmd:BitmapData=new BitmapData(imagesave.width,imagesave.height, false);bmd.draw(imagesave);var je:JPGEncoder = new JPGEncoder(100);var fileData:ByteArray = je.encode(bmd);
Либо используйте PNGEncoder

Код: Выделить всё

var bmd:BitmapData=new BitmapData(imagesave.width,imagesave.height, false);bmd.draw(imagesave);var fileData:ByteArray = PNGEncoder.encode(bmd);
sanych_dv
Разработчик
Разработчик
Сообщения: 550
Зарегистрирован: 29 апр 2011, 01:52

Re: Загрузка изображения, draw не работает с uiloader

Сообщение sanych_dv »

encode у JPGEncodera можно устанавливать в любое время.

Возможно у вас проблема нарушения среды безопасности при обращении к содержимому лоадера, если .draw возвращает пустую картинку, то вам сюда: http://www.flasher.ru/forum/blog.php?b=208
Alazaur
Разработчик
Разработчик
Сообщения: 1001
Зарегистрирован: 16 окт 2011, 20:25

Re: Загрузка изображения, draw не работает с uiloader

Сообщение Alazaur »

sanych_dv, ща я проверю 8-)
Хм можно... :? а раньше почему не прокатывало у меня, мож я new писать забывал
Последний раз редактировалось Alazaur 06 авг 2012, 01:27, всего редактировалось 2 раза.
sanych_dv
Разработчик
Разработчик
Сообщения: 550
Зарегистрирован: 29 апр 2011, 01:52

Re: Загрузка изображения, draw не работает с uiloader

Сообщение sanych_dv »

В сомнительных случаях можно приводить выражение к типу:

Код: Выделить всё

 trace( JPGEncoder(new JPGEncoder(80)).encode(bmd).length ); 
или параноидальный вариант:

Код: Выделить всё

 trace( ByteArray(JPGEncoder(new JPGEncoder(80)).encode(bmd)).length ); 
:)
Alazaur
Разработчик
Разработчик
Сообщения: 1001
Зарегистрирован: 16 окт 2011, 20:25

Re: Загрузка изображения, draw не работает с uiloader

Сообщение Alazaur »

По поводу JPGEncodera понятно :)
Мы не ищем легких путей? А не проще crossdomain.xml на сервер бросить :D
sanych_dv
Разработчик
Разработчик
Сообщения: 550
Зарегистрирован: 29 апр 2011, 01:52

Re: Загрузка изображения, draw не работает с uiloader

Сообщение sanych_dv »

Alazaur писал(а): Мы не ищем легких путей? А не проще crossdomain.xml на сервер бросить :D
Кинуть куда, на сервер вконтакте? :)

Это только если со своего сервера картинки.
Alazaur
Разработчик
Разработчик
Сообщения: 1001
Зарегистрирован: 16 окт 2011, 20:25

Re: Загрузка изображения, draw не работает с uiloader

Сообщение Alazaur »

Изображение подгружается со стороннего сервера
:) Он не с контакта грузит, а наоборот с сервера вконтакт. Хотя "сторонний сервер" тоже понятие растяжимое :D
komar0ff
Сообщения: 12
Зарегистрирован: 26 июл 2012, 20:26

Re: Загрузка изображения, draw не работает с uiloader

Сообщение komar0ff »

Картинки гружу со своего сервера, crossdomain.xml есть:

Код: Выделить всё

<cross-domain-policy><site-control permitted-cross-domain-policies="all"/><allow-access-from domain="*"/></cross-domain-policy>
Отображаются картинки нормально, а вот draw не работает.
Alazaur
Разработчик
Разработчик
Сообщения: 1001
Зарегистрирован: 16 окт 2011, 20:25

Re: Загрузка изображения, draw не работает с uiloader

Сообщение Alazaur »

А код можно глянуть, начиная от загрузки, до рисования?
Не очень хороший кроссдомен) Даже очень нехороший
Ответить