首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Raphael.js:更多路径,clean() & glow()

Raphael.js:更多路径,clean() & glow()
EN

Stack Overflow用户
提问于 2013-06-20 14:16:38
回答 1查看 1.1K关注 0票数 1

我在raphael.js上有很多问题,我希望任何人都能帮我。

First Problem:为什么他们不给我画两条不同的路径?是因为它在同一个画布上吗?!解决了!

代码语言:javascript
复制
    function animateLine(canvas, divName, time, durzeit, colorNumber, pathString) {
    $('#' + divName).ready(

    function () {
        var line = canvas.path(pathString).attr({
            stroke: colorNumber
        });
        var length = line.getTotalLength();

        $('path[fill*="none"]').hide().delay(time).animate({
            to: 1
        }, {
            duration: durzeit,
            step: function (pos, fx) {
                var offset = length * fx.pos;
                var subpath = line.getSubpath(0, offset);
                canvas.clear();
                canvas.path(subpath).attr({
                    'stroke-width': 1,
                    stroke: colorNumber
                });

            },
        });
    }, function () {
        $('path[fill*="none"]').glow();
    });
};

var canvas = Raphael('canvas', 400, 400);

animateLine(canvas, "canvas", "1000", "2000", "#03ae8c", "m87.118,11.764c2.236,7.58,7.497,14.165,9.474,22.045c2.957,11.786,3.704,24.38,2.293,36.434c-1.808,15.449-6.275,29.477-10.602,44.306c-5.588,19.152-6.986,38.342-2.33,57.733c2.296,9.562,7.805,20.21,15.25,26.768c7.399,6.517,16.052,11.587,23.489,18.181c7.456,6.61,9.146,21.192,8.788,30.781c-0.196,5.247-2.378,8.792-4.234,13.449c-1.405,3.526-3.309,6.689-4.824,10.113c-0.353,0.797-0.681,1.17-0.725,2.137");

animateLine(canvas, "canvas", "1000", "4000", "#ff0072", 
            "m214.552,10.879c1.197,1.98-7.28,12.149-8.41,14.51c-5.543,11.586-6.496,22.61-5.73,35.377c1.028,17.148,12.397,31.641,21.652,45.415c13.984,20.811,26.343,43.782,27.046,69.358c0.339,12.338,0.575,25.059-0.037,37.387c-0.522,10.504-4.778,17.693-8.019,27.26c-1.225,3.618-1.75,7.167-4.138,9.959c-3.883,4.54-9.488,9.212-15.544,10.005c-3.437,0.45-9.848,1.725-13.016-0.599");

我不会清理画布,所有的道路都会显示出来。我尝试删除函数canvas.clean()。但它所显示的路径是像素化的。这不是最好的解决办法..。

第二个问题:我只想要发光效果,但它不起作用。 },函数() {$(‘pathfill*=“none”).glow();};

我将‘画’/动画10或更多不同的路径,他们应该开始不同的时间和发光效果是重要的。但是什么都不起作用,我从两天开始就开始处理这个代码了。我应该以一种不同的方式来处理这个代码吗?

编辑:其他问题..。他们为什么画我的第一条路,第二条路,.?T_T

在这里,JSFIDDLE

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-06-20 19:13:34

对此我有不同的解决方案。看看我创建的演示

此外,守则:

代码语言:javascript
复制
var paper = Raphael("notepad", 500, 500);

var path = paper.path("M 50 200 L 120 100  200 190 80 250z");
var shadow = path.clone().scale(0.95).hide();


shadow.glow({width: 8,color: 'orange'});
path.attr({stroke: "black", "stroke-width": 2});

显然,您可以更改辉光、scale(),的颜色,并为offsetxoffsety修改glow()。在您的情况下,您可能不需要使用scale(),但是如果您想要创建阴影效果,它是有用的。

希望这是有用的。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17216020

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档