0

Kinetic.js を使用して、キャンバス上で画像をグレースケールに変換したいと考えています。そこで、次のコードを書きます。 var stage = new Kinetic.Stage({ container: 'container', width: 1000, height: 500 });

var layer = new Kinetic.Layer();
var image = new Image();
image.onload = function() {
  var img = new Kinetic.Image({
    x: 100,
    y: 30,
    image: image
  });

  layer.add(img1);
  stage.add(layer);

  img.applyFilter({
      filter: Kinetic.Filters.Grayscale,
      callback: function() {
        layer.draw();
      }
    });
};
image.src = "image.jpg";

「image.jpg」はローカル ファイルで、このコードは Firefox と IE では機能しますが、chrome では機能しません。さらに、getImageData() は、ローカル イメージの Chrome では機能しません。しかし w3schools は、Chrome が getImageData() をサポートしていると述べています。どうすればこの問題を解決できますか?

4

1 に答える 1

0

オプションを指定してChromeを開いてみてください--allow-file-access-from-file。あなたの例のように見えるfile:///ページからのfile:///アクセスを許可する必要があります。

于 2012-11-20T21:00:30.357 に答える