You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
50 lines
992 B
50 lines
992 B
|
|
/**
|
|
* Module dependencies.
|
|
*/
|
|
|
|
var Canvas = require('../lib/canvas')
|
|
, canvas = new Canvas(200, 200)
|
|
, ctx = canvas.getContext('2d')
|
|
, fs = require('fs');
|
|
|
|
ctx.globalAlpha = .2;
|
|
|
|
ctx.strokeRect(0,0,200,200);
|
|
ctx.lineTo(0,100);
|
|
ctx.lineTo(200,100);
|
|
ctx.stroke();
|
|
|
|
ctx.beginPath();
|
|
ctx.lineTo(100,0);
|
|
ctx.lineTo(100,200);
|
|
ctx.stroke();
|
|
|
|
ctx.globalAlpha = 1;
|
|
ctx.font = 'normal 40px Impact, serif';
|
|
|
|
ctx.rotate(.5);
|
|
ctx.translate(20,-40);
|
|
|
|
ctx.lineWidth = 1;
|
|
ctx.strokeStyle = '#ddd';
|
|
ctx.strokeText("Wahoo", 50, 100);
|
|
|
|
ctx.fillStyle = '#000';
|
|
ctx.fillText("Wahoo", 49, 99);
|
|
|
|
var m = ctx.measureText("Wahoo");
|
|
|
|
ctx.strokeStyle = '#f00';
|
|
|
|
ctx.strokeRect(49 + m.actualBoundingBoxLeft,
|
|
99 - m.actualBoundingBoxAscent,
|
|
m.actualBoundingBoxRight - m.actualBoundingBoxLeft,
|
|
m.actualBoundingBoxAscent + m.actualBoundingBoxDescent);
|
|
|
|
var out = fs.createWriteStream(__dirname + '/text.png')
|
|
, stream = canvas.createPNGStream();
|
|
|
|
stream.on('data', function(chunk){
|
|
out.write(chunk);
|
|
});
|
|
|