function rotate(p_deg) {	if(document.getElementById('canvas')) {		/*		Ok!: Firefox 2, Safari 3, Opera 9.5b2		No: Opera 9.27		*/		var image = document.getElementById('image');		var canvas = document.getElementById('canvas');		var canvasContext = canvas.getContext('2d');		switch(p_deg) {			default :			case 0 :				canvas.setAttribute('width', image.width);				canvas.setAttribute('height', image.height);				canvasContext.rotate(p_deg * Math.PI / 180);				canvasContext.drawImage(image, 0, 0);				break;			case 90 :				canvas.setAttribute('width', image.height);				canvas.setAttribute('height', image.width);				canvasContext.rotate(p_deg * Math.PI / 180);				canvasContext.drawImage(image, 0, -image.height);				break;			case 180 :				canvas.setAttribute('width', image.width);				canvas.setAttribute('height', image.height);				canvasContext.rotate(p_deg * Math.PI / 180);				canvasContext.drawImage(image, -image.width, -image.height);				break;			case 270 :			case -90 :				canvas.setAttribute('width', image.height);				canvas.setAttribute('height', image.width);				canvasContext.rotate(p_deg * Math.PI / 180);				canvasContext.drawImage(image, -image.width, 0);				break;		};			} }function rotateIE(p_deg) {{		/*		Ok!: MSIE 6 et 7		*/		var image = document.getElementById('image');		switch(p_deg) {			default :			case 0 :				image.style.filter = 'progid:DXImageTransform.Microsoft.BasicImage(rotation=0)';				break;			case 90 :				image.style.filter = 'progid:DXImageTransform.Microsoft.BasicImage(rotation=1)';				break;			case 180 :				image.style.filter = 'progid:DXImageTransform.Microsoft.BasicImage(rotation=2)';				break;			case 270 :			case -90 :				image.style.filter = 'progid:DXImageTransform.Microsoft.BasicImage(rotation=3)';				break;		};			};};function rotateIE_buff(p_deg) {{		/*		Ok!: MSIE 6 et 7		*/		var image = document.getElementById('image_buff');		switch(p_deg) {			default :			case 0 :				image.style.filter = 'progid:DXImageTransform.Microsoft.BasicImage(rotation=0)';				break;			case 90 :				image.style.filter = 'progid:DXImageTransform.Microsoft.BasicImage(rotation=1)';				break;			case 180 :				image.style.filter = 'progid:DXImageTransform.Microsoft.BasicImage(rotation=2)';				break;			case 270 :			case -90 :				image.style.filter = 'progid:DXImageTransform.Microsoft.BasicImage(rotation=3)';				break;		};			};};// Multiple onload function created by: Simon Willison// http://simonwillison.net/2004/May/26/addLoadEvent/function addLoadEvent(func) {  var oldonload = window.onload;  if (typeof window.onload != 'function') {    window.onload = func;  } else {    window.onload = function() {      if (oldonload) {        oldonload();      }      func();    }  }}function BufferLoad(){var canvas = document.getElementById('canvas');var canvasContext = canvas.getContext('2d');var canvas_buff = document.getElementById('canvas_buff');var canvasContext_buff = canvas_buff.getContext('2d');//canvasContext_buff.fillStyle = "rgb(255,255,255)";//canvasContext_buff.fillRect (0, 0, 400, 400); canvasContext_buff.drawImage (canvas, 0, 0);}addLoadEvent(function() {	var image = document.getElementById('image');	var canvas = document.getElementById('canvas');	if(canvas.getContext) {		image.style.visibility = 'hidden';		image.style.position = 'absolute';	} else {		canvas.parentNode.removeChild(canvas);	};		rotate(0);});
