在Raphael html5中设置整个画布的alpha/透明度

在Raphael html5中设置整个画布的alpha/透明度,html,canvas,svg,raphael,opacity,Html,Canvas,Svg,Raphael,Opacity,使用Raphael在html5中绘制SVG,是否可以设置整个画布的alpha不透明度 谢谢您可以像这样更改Raphael元素的不透明度: raphaelElement.attr(opacity,.75); 如果要在画布上绘制svg,只需设置context.globalAlpha,之后的所有绘制将以指定的不透明度进行: context.globalAlpha = 0.75; 你可以做几件事。您可以定义全局,将每个元素添加到集合中,并将“不透明度”属性应用到集合中,或者使用一次将不透明度

使用Raphael在html5中绘制SVG,是否可以设置整个画布的alpha不透明度


谢谢

您可以像这样更改Raphael元素的不透明度:

  raphaelElement.attr(opacity,.75);
如果要在画布上绘制svg,只需设置context.globalAlpha,之后的所有绘制将以指定的不透明度进行:

  context.globalAlpha = 0.75;

你可以做几件事。您可以定义全局,将每个元素添加到集合中,并将“不透明度”属性应用到集合中,或者使用一次将不透明度应用到每个元素


使用一套 创建如下内容:

globalSet = paper.set();
然后,在创建元素时,将其添加到集合中:

el = paper.circle(60, 60, 50);
el2 = paper.circle(90, 60, 50);

globalSet.push(el, el2);
globalSet.attr({opacity: .75});
下面是一个JSFIDLE:


使用forEach() 不要使用集合,而是使用纸张的
forEach()
方法

paper.forEach(function (element) {
    element.attr({opacity: .75});
});

JSFIDLE:

谢谢,但我在拉斐尔身上该怎么做呢?我编辑了我的答案,在画布和拉斐尔绘画中都加入了不透明度。拉斐尔不使用html5画布,所以这部分在这里不适用。是的——我的错,当时是深夜,我看到了拉斐尔,但我的注意力集中在画布上。所以不可能在一次调用中对所有元素应用不透明度?我已经对一些应用了不透明度,并且希望全局不透明度应用进一步的不透明度