私はペイントアプリケーションを作成しました。ユーザーが図面を保存したいときは、単に保存ボタンを押してダイアログを表示するか、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
素晴らしい!それは迷惑な機能かもしれませんが、実際にはいくつかの厄介なものを防止します。 –
UIAなしでFileReference.save()を呼び出そうとすると、デバッグプレイヤーにスローしてエラーが発生しませんか? – joncys