3

我正在尝试绘制一个使用填充样式的填充矩形。下面的代码允许绘制一个矩形,但在此之后,所有后续操作都会取消绘制。

这是控制填充的代码:

var img = new Image();
img.src = 'https://encrypted-tbn3.gstatic.com/images?q=tbn:ANd9GcR4Ag1va1Vm9Tynun8vY89CS1pY1eNMWGMxrc5efOIzEcQ-4IFa'
var pat = context.createPattern(img, 'repeat');
context.fillStyle = pat;

我怀疑我缺少关于 createPattern 方法的某些内容。是否有替代我试图完成的不使用 createPattern 的方法?我注意到一些示例使用 onload(); img.src 的值在我的生活环境中发生变化,所以我不确定这是否相关。

小提琴:http: //jsfiddle.net/Dvtz3/10/

好的,所以事实证明,一旦我实时运行而不是本地运行,chrome 安全错误就得到了修复,但不是用模式填充矩形,而是将其填充为实心。填充图案在 FF 中运行良好

https://dl.dropbox.com/u/97446129/2-28/joined%2011-1/filltest.html

4

1 回答 1

1

查看错误控制台,我看到它充满了SecurityErrors。这是因为当您在画布上绘图时,您正在使用跨域图像对其进行污染。这将不允许您getImageData出于安全原因打电话,因此会出现“时髦”的结果。

于 2013-03-02T00:53:27.897 回答