горизонтальное отражение
var razmer=parseInt(elem_kanva.width/2)
var cnvobj=document.getElementById(elem_kanva.name_can);
var ctx=cnvobj.getContext("2d");
for (i=0;i<=razmer;i++)
{
imgd = ctx.getImageData(i,0, 1, elem_kanva.height);
imgd1 = ctx.getImageData((elem_kanva.width-i),0, 1, elem_kanva.height);
ctx.putImageData(imgd, (elem_kanva.width-i), 0);
ctx.putImageData(imgd1, i, 0);
}
вертикальное отражение
var razmer=parseInt(elem_kanva.height/2);
var cnvobj=document.getElementById(elem_kanva.name_can);
var ctx=cnvobj.getContext("2d");
for (i=0;i<=razmer;i++)
{
imgd = ctx.getImageData(0,i, elem_kanva.width, 1);
imgd1 = ctx.getImageData(0,(elem_kanva.height-i), elem_kanva.width, 1);
ctx.putImageData(imgd, 0, (elem_kanva.height-i));
ctx.putImageData(imgd1, 0, i);
}