Skip to main content

HTML5 Canvas Set Shape Opacity Tutorial

To set a shape opacity with Konva, we can set the opacity property when we instantiate the node, or we can use the opacity() method.

Shapes can have an opacity value between 0 and 1, where 0 is fully transparent, and 1 is fully opaque. Unless otherwise specified, all shapes are defaulted with an opacity value of 1.

To apply transparency to several shapes without seeing where they overlap, make their group isolated with isolated: true. See Isolated Groups and the Transparent Group demo.

Instructions: Mouseover the pentagon to change its opacity.

import Konva from 'konva';

var width = window.innerWidth;
var height = window.innerHeight;

var stage = new Konva.Stage({
container: 'container',
width: width,
height: height,
});
var layer = new Konva.Layer();

var pentagon = new Konva.RegularPolygon({
x: stage.width() / 2,
y: stage.height() / 2,
sides: 5,
radius: 70,
fill: 'red',
stroke: 'black',
strokeWidth: 4,
opacity: 0.5,
});

pentagon.on('mouseover', function () {
this.opacity(1);
});

pentagon.on('mouseout', function () {
this.opacity(0.5);
});

// add the shape to the layer
layer.add(pentagon);

// add the layer to the stage
stage.add(layer);