我想为从canvas对象检索的上下文添加一些方法。例如,我想将这个原型方法添加到任何2D绘图上下文中,它将变换重置为单位矩阵:
Context.prototype.identity = function() {
this.setTransform(1, 0, 0, 1, 0, 0);
}
然后每当我请求像这样的2D上下文时
var canvas = document.getElementById("canvas");
var context = canvas.getContext("2d");
上下文对象自动拥有一个identity()方法,可以将任何转换重置为默认状态。我知道我可以附上我的原型方法:
context.identity = function() { context.setTransform(1, 0, 0, 1, 0, 0); }
但我必须每次都明确地执行此操作,并且我更喜欢“Context.prototype.identity = function”语法,因为它会自动为我附加方法。
好奇
答案 0 :(得分:31)
这应该有效:
CanvasRenderingContext2D.prototype.identity = function() {
return this.setTransform(1, 0, 0, 1, 0, 0);
}