glfx.jsを使用して画像を編集していますが、関数を使用してその画像のデータを取得しようとするとtoDataURL()
、空白の画像 (元の画像と同じサイズの幅) が表示されます。
奇妙なことに、Chrome ではスクリプトが完璧に機能します。
私が言及したいのはcanvas
、 onload イベントを使用して画像が読み込まれるということです。
img.onload = function(){
try {
canvas = fx.canvas();
} catch (e) {
alert(e);
return;
}
// convert the image to a texture
texture = canvas.texture(img);
// draw and update canvas
canvas.draw(texture).update();
// replace the image with the canvas
img.parentNode.insertBefore(canvas, img);
img.parentNode.removeChild(img);
}
また、私のイメージのパスは同じドメインにあります。
問題 (Firefox の場合) は、保存ボタンを押したときです。Chrome は期待どおりの結果を返しますが、Firefox は次のように返します。
data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA7YAAAIWCAYAAABjkRHCAAAHxklEQVR4nO3BMQEAAADCoPVPbQZ/oAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
... [ lots of A s ] ...
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAzwD6aAABkwvPRgAAAABJRU5ErkJggg==
この結果の原因は何ですか?どうすれば修正できますか?