var img = new Image();
img.src = "./../images/news.png";
var angle = 20;
var offset = 21.8;
var startOffset = new Array(40, 42);
var line = 0;
var maxLine = 9;
var margin = 5;

function addImage(ctx)
{
	ctx.setTransform(1,0,0,1,0,0);
	var radAngle = angle*Math.PI/180;
	var iw = img.width;
	var ih = img.height;
	var x1 = ih * Math.sin(radAngle);
	var x2 = iw * Math.cos(radAngle);
	var w = Math.abs(x1) + Math.abs(x2);
	var y1 = ih * Math.cos(radAngle);
	var y2 = iw * Math.sin(radAngle);
	var h = Math.abs(y1) + Math.abs(y2);
	ctx.canvas.width = w;
	ctx.canvas.height = h;
	var dx = 0;
	var dy = 0;
	if(radAngle >= 0 && radAngle < Math.PI/2)
	{
		dx = 0;
		dy = y2;
	}
	if(radAngle >= Math.PI/2 && radAngle < Math.PI)
	{
		dx = -x2;
		dy = y2 - y1;
	}
	if(radAngle >= Math.PI && radAngle < 3*Math.PI/2)
	{
		dx = -x1 -x2;
		dy = -y1;
	}
	if(radAngle >= 3*Math.PI/2 && radAngle < 2*Math.PI)
	{
		dx = -x1;
		dy = 0;
	}
	ctx.translate(dx, dy);
	ctx.rotate(-radAngle);
	ctx.drawImage(img, 0, 0);
	ctx.translate(startOffset[0], startOffset[1]);
}

function writeLine(text, ctx)
{
	if( line <= maxLine)
	{
		if(text.length != 0)
		{
			var iw = img.width - startOffset[0] - margin;
			var regExp = new RegExp("([\\'\\w]+)((\\W+)|$)","gi");
			var string ="";
			var result;
			while(result = regExp.exec(text))
			{
				if (ctx.measureText(string + result[1]+result[2]).width < iw) // si y'a de la place pour le mot prochain, on l'ajoute dans string
					string += result[1]+result[2];
				else											  //plus de place :)
					break;											//donc on arrete la boucle
			}
			if(string.length != 0) 						  //si la chaine n'est pas vide :
			{
				line++;
				ctx.fillText(string, 0, 0);					//on affiche la chaine
				ctx.translate(0, offset);
				writeLine(text.slice(string.length), ctx);
			}
		}
	}
}

function closeText(ctx)
{
	while (line < maxLine)
	{
		ctx.translate(0, offset);
		line++;
	}
	var text = "Cliquez pour fermer";
	ctx.fillStyle = "#ff0000";
	ctx.fillText(text, img.width - startOffset[0] - ctx.measureText(text, 0).width - margin, 0);
}