提交 debe2d44 编写于 作者: X xty

1.按钮按字母排序 2.属性示例标题去掉set 3.添加get/setImageData示例

上级 d83c298a
...@@ -61,10 +61,10 @@ ...@@ -61,10 +61,10 @@
export default { export default {
data() { data() {
const API_PATH = ["arc", "arcTo", "bezierCurveTo", "quadraticCurve", "moveTo", "lineTo", "rect", "clip", "pattern"] const API_PATH = ["arc", "arcTo", "bezierCurveTo", "quadraticCurve", "moveTo", "lineTo", "rect", "clip", "createPattern","getSetImageData"]
const API_DRAW = ["stroke", "strokeRect", "strokeText", "fill", "fillRect", "fillText", "drawImage", "drawImageLocal", "clearRect"] const API_DRAW = ["stroke", "strokeRect", "strokeText", "fill", "fillRect", "fillText", "drawImage", "drawImageLocal", "clearRect"]
const API_STATE = ["beginPath", "closePath", "reset", "transform", "rotate", "resetTransform", "save", "restore", "scale", "translate"] const API_STATE = ["beginPath", "closePath", "reset", "transform", "rotate", "resetTransform", "save", "restore", "scale", "translate"]
const API_PROPERTIES = ["setLineCap", "setLineJoin", "setLineWidth", "setMiterLimit", "setFillStyle", "setStrokeStyle", "setGlobalAlpha", "setFontSize", "lineDash", "linearGradient", "radialGradient", "textAlign"] const API_PROPERTIES = ["lineCap", "lineJoin", "lineWidth", "miterLimit", "fillStyle", "strokeStyle", "globalAlpha", "font", "setLineDash", "createLinearGradient", "createRadialGradient", "textAlign"]
return { return {
title: 'Context2D', title: 'Context2D',
...@@ -78,7 +78,7 @@ ...@@ -78,7 +78,7 @@
testCanvasContext: false, testCanvasContext: false,
testToBlobResult: false, testToBlobResult: false,
testToDataURLResult: false, testToDataURLResult: false,
names: [...API_PATH, ...API_DRAW, ...API_STATE, ...API_PROPERTIES, "measureText", "path2D"] as string[], names: [...API_PATH, ...API_DRAW, ...API_STATE, ...API_PROPERTIES, "measureText", "path2D"].sort() as string[],
// 仅测试 // 仅测试
testCreateCanvasContextAsyncSuccess: false, testCreateCanvasContextAsyncSuccess: false,
testCreateImage: false, testCreateImage: false,
...@@ -184,13 +184,16 @@ ...@@ -184,13 +184,16 @@
case "closePath": case "closePath":
this.closePath(); this.closePath();
break; break;
case "pattern": case "getSetImageData":
this.getSetImageData();
break;
case "createPattern":
this.pattern() this.pattern()
break; break;
case "linearGradient": case "createLinearGradient":
this.createLinearGradient(); this.createLinearGradient();
break; break;
case "radialGradient": case "createRadialGradient":
this.createRadialGradient(); this.createRadialGradient();
break; break;
case "fill": case "fill":
...@@ -256,31 +259,31 @@ ...@@ -256,31 +259,31 @@
case "measureText": case "measureText":
this.measureText(); this.measureText();
break; break;
case "setFillStyle": case "fillStyle":
this.setFillStyle(); this.setFillStyle();
break; break;
case "setStrokeStyle": case "strokeStyle":
this.setStrokeStyle(); this.setStrokeStyle();
break; break;
case "setGlobalAlpha": case "globalAlpha":
this.setGlobalAlpha(); this.setGlobalAlpha();
break; break;
case "setFontSize": case "font":
this.setFontSize(); this.setFontSize();
break; break;
case "setLineCap": case "lineCap":
this.setLineCap(); this.setLineCap();
break; break;
case "setLineJoin": case "lineJoin":
this.setLineJoin(); this.setLineJoin();
break; break;
case "lineDash": case "setLineDash":
this.lineDash(); this.lineDash();
break; break;
case "setLineWidth": case "lineWidth":
this.setLineWidth(); this.setLineWidth();
break; break;
case "setMiterLimit": case "miterLimit":
this.setMiterLimit(); this.setMiterLimit();
break; break;
case "textAlign": case "textAlign":
...@@ -378,6 +381,24 @@ ...@@ -378,6 +381,24 @@
context.textAlign = "right" context.textAlign = "right"
context.fillText("right-aligned", 150, 130) context.fillText("right-aligned", 150, 130)
}, },
getSetImageData(){
const context = this.renderingContext!
// Create path
context.moveTo(0, 70);
context.lineTo(80, 0);
context.lineTo(210, 110);
context.lineTo(30, 110);
context.lineTo(160, 0);
context.lineTo(240, 70);
context.closePath();
// Fill path
context.fillStyle = "green";
context.fill();
let imageData = context.getImageData(0, 0, context.canvas.width/2, context.canvas.height/2)
context.putImageData(imageData, context.canvas.width/2, context.canvas.height/2)
},
bezierCurveTo() { bezierCurveTo() {
const context = this.renderingContext! const context = this.renderingContext!
...@@ -453,7 +474,7 @@ ...@@ -453,7 +474,7 @@
this.clearCanvasRect() this.clearCanvasRect()
const pattern = context.createPattern(image, "repeat") const pattern = context.createPattern(image, "repeat")
context.fillStyle = pattern context.fillStyle = pattern
context.fillRect(0, 0, 100, 100) context.fillRect(0, 0, 400, 400)
context.restore() context.restore()
}; };
}, },
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册