HTML5 Canvas 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.

Konva Opacity Demoview raw
<!DOCTYPE html>
<script src="[email protected]/konva.min.js"></script>
<meta charset="utf-8" />
<title>Konva Opacity Demo</title>
body {
margin: 0;
padding: 0;
overflow: hidden;
background-color: #f0f0f0;
<div id="container"></div>
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 () {

pentagon.on('mouseout', function () {

// add the shape to the layer

// add the layer to the stage
Enjoying Konva? Please consider to support the project.