2

私はcanvasContext.getImageData(0、0、1、1).dataを使用して、画像のピクセル情報を取得しています。IE9を除くすべてのブラウザでうまく機能します。ランダムな時間にピクセル情報が利用できない場合、予想される255ではなく0を返します。

画像のonloadイベント内でgetImageDataコードを実行しています。画像srcは、onload関数を作成した後に定義されます。

IE9の現在のハックは次のとおりです。

var image = new Image();

image.onload = function (e) {
        while (canvasContext.getImageData(0, 0, 1, 1).data[0] == 0) {
            canvasContext.drawImage(image, 0, 0, 200, 2);
        }
        // Do other important stuff
}

image.src = "someImage.png";

何が起こるかというと、whileループは約30〜60回実行され、最終的にピクセル情報を取得します。

IE9でこれが発生する理由についてのヘルプは素晴らしいでしょう!

ありがとう。

4

0 に答える 0