Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Как сохранить файл из Flash не через FileReference, а через navigateToURL (http://www.flasher.ru/forum/showthread.php?t=202670)

TWETTI 31.07.2013 19:39

Как сохранить файл из Flash не через FileReference, а через navigateToURL
 
Есть JPEG файл который я могу сохранить через FileReference.save:
Код AS3:

var imgByteData:ByteArray = JPEGEncoder.encode(myBitmapData, 100);
var file:FileReference = new FileReference();
file.save(imgByteData, "capture.jpg");

Можно ли как-нибудь воспользоваться navigateToURL или другим методом и сохранить картинку с помощью браузера (Чтобы бразуер сохранил эту картинку)?

AlexCooper 01.08.2013 01:19

Цитата:

Сообщение от TWETTI (Сообщение 1142447)
Можно ли как-нибудь воспользоваться navigateToURL или другим методом и сохранить картинку с помощью браузера (Чтобы бразуер сохранил эту картинку)?

Не знаю на 100% может ли JavaScript сохранять картинку, но по идее должен, к примеру сжимаете картинку PNGEncoder, а потом в Base64 и отдать картинку JavaScript'у, где и сохранить по-средствами браузера.

KumoKairo 01.08.2013 08:50

Цитата:

Не знаю на 100% может ли JavaScript сохранять картинку
Сохранять картинку может, вот библиотека:
https://github.com/eligrey/FileSaver.js
Вот пример библиотеки (JS only)
http://eligrey.com/demos/FileSaver.js/

Для передачи вашей картинки браузеру можно закодировать ее в строку по base64:
Код AS3:

var imageBase64:String = Base64.encode(jpgBytes);

http://www.blooddy.by/ru/crypto/
Вот тут есть быстрая библиотека для кодировки в Base64.

Отправляем картинку "наружу" - в браузер:
Код AS3:

if(ExternalInterface.available)
{
    ExternalInterface.call("myImageReceiver", imageBase64);
}

А на странице добавляем функцию js:
Код:

function myImageReceiver(imageData)
{
    var image = 'data:image/jpeg;base64,' + imageData;
}

И работаем с этим image как хотим)

maincode 01.08.2013 13:18

Интересно а чем принципиально отличается сохранение с помощью JS от сохранения с помощью FileReference ?

TWETTI 01.08.2013 16:50

KumoKairo, AlexCooper, Спасибо. Это то, что нужно.


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

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