0

以前にここでいくつかの素敵な助けを借りて、Ive は私が取り組んでいるプロジェクトをほぼ完了しました。私はそれを完了したと思っていましたが、私は行って最終的な問題に遭遇しました. 私のプログラムはファイルの最終出力のスクリーンショットを撮り、ファイルの最終出力には URL からリンクされた画像が含まれています。画像を除外すると問題なく保存されますが、Web アドレスから画像を読み込むと、imageSnapShot が機能しないようです。

private function takeSnapshot(even:Event=null):void {

    var imageSnap:ImageSnapshot = ImageSnapshot.captureImage(previewMode);
    var MyFile:FileReference = new FileReference();

    MyFile.save(imageSnap.data, 'profile.png');


 }

「previewMode」は、(ビュースタック) のスクリーンダンプを取得するコンポーネントであり、内部には Web サイトからリンクされた画像がいくつかあります。

いくつかのテストを通じて、それは停止するようです -

var imageSnap:ImageSnapshot = ImageSnapshot.captureImage(previewMode);

したがって、実際には出力のイメージを取得していません。どんな助けでも大歓迎です、あなたはこれまで素晴らしい人たちでした。

4

1 に答える 1

1

ImageSnapshot.captureImageBitmapData.draw()スナップショットを撮る方法を使用している可能性があります。このメソッドのlivedocsページには、次のように書かれています。

ソース オブジェクトと (Sprite または MovieClip オブジェクトの場合) そのすべての子オブジェクトは、呼び出し元と同じドメインから取得するか、Security.allowDomain を呼び出して呼び出し元がアクセスできる SWF ファイル内にある必要があります。 () 方法。これらの条件が満たされない場合、 draw() メソッドは何も描画しません。

ファイルには、URL からリンクされた画像が含まれています。どうやらそれは許可されていません。考えられる回避策については、Security.allowDomainを確認してください。外部画像がある場合、これらのルールも適用されます。

画像の読み込みに使用された Loader オブジェクト以外のドメインから Bitmap オブジェクトを読み込み、Loader オブジェクトのドメインへのアクセスを許可するクロスドメイン ポリシー ファイルがない場合、そのドメインのスクリプトはアクセスできません。 Bitmap オブジェクトまたはそのプロパティとメソッド。

于 2009-10-08T13:06:54.080 に答える