Я создал приложение для рисования, и когда пользователь хочет сохранить его рисунок, он просто нажимает кнопку сохранения, и появляется диалоговое окно - или должно быть сделано.AS3 FileReference.save() работает при тестировании локально, но не в браузере
При тестировании локально на dev машине это не проблема, но всякий раз, когда приложение загружается в браузере, это не сработает. Даже если я загружу локальный файл SWF в браузере, он не будет работать.
Следующий код - это то, что я использую для сохранения файла, и, как сказано, он работает нормально локально, но всякий раз, когда он входит в браузер, он не открывается. Диалог сохранения просто не появляется.
Любые предложения?
var bitmapData:BitmapData = new BitmapData(canvas.width, canvas.height);
bitmapData.draw(canvas);
var jpg:JPEGEncoder = new JPEGEncoder(100);
var ba:ByteArray = jpg.encode(bitmapData);
file = new FileReference();
file.addEventListener(Event.COMPLETE, fileSaveComplete);
file.addEventListener(IOErrorEvent.IO_ERROR, error);
file.save(ba, 'FileName.jpg');
Запуск FlashPlayer 11 и сбор до 10.2 BTW.
Большое спасибо. Код, который я вставил выше, вызывается из созданного пользовательского события, и поэтому он не работает. Я изменил его так, что он вызван из MouseEvent, и мы пойдем! И тебе хорошего дня. – Martin
Отлично! Это может быть раздражающей особенностью, но это действительно предотвращает некоторые неприятные вещи. –
На стороне примечания, не бросает ли он и ошибка в отладочном проигрывателе, если вы пытаетесь вызвать FileReference.save() без МАУ? – joncys