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 回答