我正在尝试使用Konvajs在现有图像对象上绘制一些东西。 所以我这样编码:
var stage = new Konva.Stage({
container: 'underground-map-container',
width: window.innerWidth,
height: 1121.6
});
var layer = new Konva.Layer();
var imageObj = new Image();
imageObj.onload = function () {
var parking_img = new Konva.Image({
image: imageObj,
width: 1328,
height: 878.6
});
layer.add(parking_img);
stage.add(layer);
};
imageObj.src = "../static/img/underground-map.png";
var rect = new Konva.Rect({
x: 700,
y: 50,
width: 200,
height: 200,
fill: 'blue',
opacity:1
});
layer.add(rect);
var rect1 = new Konva.Rect({
x: 800,
y: 50,
width: 200,
height: 200,
fill: 'red',
opacity:1
});
layer.add(rect1);
rect1可以阴影rect,但是,它们都不能遮挡我的图像。有谁知道怎么做,谢谢!
答案 0 :(得分:2)
图像在加载时添加到图层。它会在添加矩形后发生,因此图像会放在顶部。要移动图像,您可以使用:
parking_img.moveToBottom()
parking_img.setZIndex(0)
重要提示:仅在将图像添加到以下图层后才使用这些方法:
var parking_img = new Konva.Image({
image: imageObj,
width: 1328,
height: 878.6
});
layer.add(parking_img);
parking_img.moveToBottom();
layer.draw();