Browse Source

Using setDash for dashed lines

Yury Delendik 13 years ago
parent
commit
a7f0e9612a
  1. 12
      src/canvas.js
  2. 12
      test/features/tests.js

12
src/canvas.js

@ -361,10 +361,14 @@ var CanvasGraphics = (function CanvasGraphicsClosure() { @@ -361,10 +361,14 @@ var CanvasGraphics = (function CanvasGraphicsClosure() {
this.ctx.miterLimit = limit;
},
setDash: function CanvasGraphics_setDash(dashArray, dashPhase) {
this.ctx.mozDash = dashArray;
this.ctx.mozDashOffset = dashPhase;
this.ctx.webkitLineDash = dashArray;
this.ctx.webkitLineDashOffset = dashPhase;
var ctx = this.ctx;
if ('setLineDash' in ctx) {
ctx.setLineDash(dashArray);
ctx.lineDashOffset = dashPhase;
} else {
ctx.mozDash = dashArray;
ctx.mozDashOffset = dashPhase;
}
},
setRenderingIntent: function CanvasGraphics_setRenderingIntent(intent) {
// Maybe if we one day fully support color spaces this will be important

12
test/features/tests.js

@ -391,10 +391,14 @@ var tests = [ @@ -391,10 +391,14 @@ var tests = [
ctx.moveTo(0,5);
ctx.lineTo(50, 5);
ctx.lineWidth = 10;
ctx.mozDash = [10, 10];
ctx.mozDashOffset = 0;
ctx.webkitLineDash = [10, 10];
ctx.webkitLineDashOffset = 0;
if ('setLineDash' in ctx) {
ctx.setLineDash([10, 10]);
ctx.lineDashOffset = 0;
} else {
ctx.mozDash = [10, 10];
ctx.mozDashOffset = 0;
}
ctx.stroke();
var data = ctx.getImageData(0, 0, 50, 50).data;

Loading…
Cancel
Save