Définir le remplissage de l'arrière-plan, le trait et l'opacité du canevas HTML5

J'utilise le code ci-dessous pour définir des styles de myCanvasmais je ne suis pas en mesure de définir fillStyle. Pourtant, strokeStyle et lineWidth fonctionne bien. Quelqu'un pourrait s'il vous plaît aider avec cela?

Init()
{
     var can = byId('myCanvas');

        //get it's context
        hdc = can.getContext('2d');

        hdc.strokeStyle = 'red';
        hdc.lineWidth = 2;

        //Fill the path
        hdc.fillStyle = "#9ea7b8";
        hdc.opacity = 0.2;
        hdc.fill();
}

//And call the drawPoly function with coordinates.
function drawPoly(coOrdStr) {
        var canvas = byId('myCanvas');
        hdc.clearRect(0, 0, canvas.width, canvas.height);

        var mCoords = coOrdStr.split(',');
        var i, n;
        n = mCoords.length;
        hdc.beginPath();
        hdc.moveTo(mCoords[0], mCoords[1]);
        for (i = 2; i < n; i += 2) {
            hdc.lineTo(mCoords[i], mCoords[i + 1]);
        }
        hdc.lineTo(mCoords[0], mCoords[1]);
        hdc.stroke();

    }

source d'informationauteur Bharathi