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.

If you want to apply transparency for several shapes without seen overlapping areas, take a look into 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);