ローカルで実行する必要がある HTML5 アプリがあります。アプリを実行してキャンバスに画像を読み込もうとすると、Chrome で次のエラー メッセージが表示されます。
キャンバスがクロスオリジン データによって汚染されているため、キャンバスから画像データを取得できません
HTML ドキュメントと画像の両方がローカル フォルダーにあります。これはユーザーに配布されるアプリなので、ローカル サーバーを実行することはできません。Chromeでそのまま実行する必要があります...この問題に関する回答を読みましたが、それらはすべてローカルファイルには関係のないCORSおよびクロスオリジンポリシーに関連しています...
この状況の解決策は何ですか? Chromeでローカルにキャンバスに画像をロードするにはどうすればよいですか?
編集:これはエラーをスローするコードです:
var canvas = Matach.createElement(false, "canvas", false, false);
var context = canvas.getContext("2d");
context.clearRect(0, 0, canvas.width, canvas.height);
context.globalCompositeOperation = 'source-over';
context.save();
context.drawImage(
item.img.img,
-item.img.width / 2,
-item.img.height / 2,
item.img.width,
item.img.height
);
context.restore();
res = context.getImageData(0, 0, canvas.width, canvas.height);