编程语言
首页 > 编程语言> > javascript-Raphael中风不透明度

javascript-Raphael中风不透明度

作者:互联网

我有一些用paper.path()创建的形状,我想填充它们(用于单击和拖动)和透视图.但是,当我将不透明度设置为零时,形状的轮廓(描边)以及内部都消失了.无论如何,是否只有形状的内部不透明度为0?

我尝试过的两件事:

(1)设置“笔画不透明度”属性.这似乎确实有帮助,例如在这里仍然不可见:

var paper = Raphael(0, 0, "100%", "100%")var t = paper.path( ["M", 100, 100, "L", 150, 150, "L",     100, 300, "L", 100, 100] ).attr({stroke : "black", 
                                                                                     fill :     "white", 
                                                                                     opacity :     0, 
                                                                                     "stroke-    opacity" : 1})

(2)创建不透明度1的轮廓,以显示我的形状的未填充轮廓,并将其与填充但透明的原件一起显示.这行得通,但很麻烦.

有更好的解决方案吗?

解决方法:

如果只想使填充透明,则应使用fill-opacity而不是不透明度.或者,您可以将填充设置为无.

var t = paper.path('M100 100L150 150L100 300L100 100').attr({
    'stroke': 'black', 
    'fill': 'white',
    'fill-opacity': 0,
    'stroke-width': 15,
    'stroke-opacity': 0.5,
    'stroke-linecap': 'round',
    'stroke-linejoin': 'round'
});

要么

var t = paper.path('M100 100L150 150L100 300L100 100').attr({
    'stroke': 'black', 
    'fill': 'none',
    'stroke-width': 15,
    'stroke-opacity': 0.5,
    'stroke-linecap': 'round',
    'stroke-linejoin': 'round'
});

至于拖动,听起来应该调整pointer-events属性.也许指针事件:“全部”将为您提供所需的结果.

标签:raphael,javascript
来源: https://codeday.me/bug/20191122/2063132.html