Скачать и сохранить JPEG с Action Script 3

Привет, мне нужно несколько советов о том, как загрузить изображение в формате JPEG, адресованное через URL, и сохранить его на локальный диск с помощью скрипта действия 3.

Большинство найденных Iv решений требуют библиотек кодирования JPEG, но я не понимаю, почему я должен что-то кодировать. Файл уже в формате JPGE, почему мне нужно загрузить его как BitmapData только для того, чтобы использовать какой-то громоздкий класс кодирования JPEG, чтобы снова превратить его в формат JPEG, прежде чем я сохраню его на диск?

Мне нужно решение, которое обходит этот неэффективный подход, пожалуйста.

1 ответ

Решение

Вам не нужно.

var stream:URLStream = new URLStream();
stream.addEventListener( Event.COMPLETE, completeHandler );
stream.load( "URL TO JPG");

function completeHandler( e:Event ):void {
    var bytes:ByteArray = new ByteArray();
    stream.readBytes( bytes );

    // use either FileStream or FileReference to save the byte array
}

Когда вы загружаете JPG в BitmapDataфактически распаковывает данные JPG. Вот почему вы не можете сохранить его напрямую... JPG больше не является JPG, это несжатый битовый образ в этот момент. Вы также можете загрузить BitmapData непосредственно из ByteArray, так что вы также можете отобразить изображение, если вам нужно.

Другие вопросы по тегам