Faire pivoter l'image de 90 degrés sur HTML5 Canvas

J'ai du mal à la rotation d'une image à l'aide d'un HTML5 canvas. Je suppose que j'ai juste les calculs faux, et serais reconnaissant de toute aide dans l'obtention de ce droit.

Sur un appareil mobile, je suis à la capture d'un utilisateur signature sur un 150px par 558px toile. Je suis que d'essayer de créer un 558px par 150px de l'image qui est juste la capture de signature, rotation de 90 degrés. Ci-dessous est un extrait du code que j'ai actuellement. Comme vous pouvez probablement le deviner, je n'ai pas une bonne adhérence sur les mathématiques qui vont dans cette. Je crois que j'ai la procédure correcte, mais pas les chiffres.

Ce que j'essaie de faire c'est:
1) définir le centre de la toile à la moyenne, la compensation par la hauteur et la largeur de mon image
2) tournez la toile de 90 degrés
3) dessiner l'image
4) traduire le dos toile.

EDIT: Voici un JSFiddle: http://jsfiddle.net/x9FyK/

    var $signature = $("#signature");
    var signatureData = $signature.jSignature("getData");

    console.log(signatureData);

    var img= new Image();
    img.onload = function() {
        var rotationCanvas = document.createElement('canvas');
        rotationCanvas.width = img.height;
        rotationCanvas.height = img.width;

        var context = rotationCanvas.getContext("2d");
        context.translate((rotationCanvas.width/2) - (img.width/2), -(rotationCanvas.height/2) - img.height/4);

        context.rotate(Math.PI/2);
        context.drawImage(img,0,0);
        context.translate(-((rotationCanvas.width/2) - (img.width/2)), -(-(rotationCanvas.height/2) - img.height/4));
        var rotatedData = rotationCanvas.toDataURL();

        ...Handling rotated data here

    };
    img.src = signatureData;

Si je peux donner plus d'informations, s'il vous plaît laissez-moi savoir.

Merci d'avance pour votre aide,

pouvez-vous poster un jsfiddle lien?
J'ai édité le post avec le violon: jsfiddle.net/x9FyK

OriginalL'auteur user3582127 | 2014-04-28