【发布时间】:2013-02-01 19:03:22
【问题描述】:
html5中使用Raphael绘制SVG,是否可以设置整个画布的alpha不透明度?
谢谢
【问题讨论】:
标签: html canvas svg raphael opacity
html5中使用Raphael绘制SVG,是否可以设置整个画布的alpha不透明度?
谢谢
【问题讨论】:
标签: html canvas svg raphael opacity
您可以做几件事。您可以定义一个全局Paper.set,将每个元素添加到集合中,然后将不透明度属性应用于集合,或者使用Paper.forEach() 一次将不透明度应用于每个元素。
创建类似的东西:
globalSet = paper.set();
然后在创建元素时,将其添加到集合中:
el = paper.circle(60, 60, 50);
el2 = paper.circle(90, 60, 50);
globalSet.push(el, el2);
globalSet.attr({opacity: .75});
这是一个 jsFiddle:http://jsfiddle.net/TA9vn/2/
不要使用集合,而是对纸张使用forEach() 方法。
paper.forEach(function (element) {
element.attr({opacity: .75});
});
jsFiddle:http://jsfiddle.net/JCvBT/2/
【讨论】:
您可以像这样更改 Raphael 元素的不透明度:
raphaelElement.attr(opacity,.75);
如果您要在画布上绘制 svg,只需设置 context.globalAlpha ,之后的所有绘图都将具有指定的不透明度:
context.globalAlpha = 0.75;
【讨论】: