SnapSVG:缩放变换执行无错误但没有明显效果

时间:2014-08-17 17:47:17

标签: javascript svg snap.svg

我对Snap& amp; svg,试着变得精明。我有一个外部SVG文件,我将其作为片段加载,然后附加到纸质对象。然后我想缩放整个纸质对象。

执行以下代码;外部文件加载,阴影被应用,它可见地附加到纸对象。然而,变换没有做任何事情。据我所知,我已经复制了this tutorial中所见的同样重要的效果。不幸的是,官方文档,至少对我来说,或多或少是无用的,因为它的模糊性 - 通过简洁的appraoch。任何人吗?

var logo
            $.ajax({
                url:"img/logo.svg",
                data: null,
                complete: function(resp) {
                    logo = Snap.parse(resp.responseText);
                    logo = logo.selectAll("g");
                    var logoPaper = Snap(app.sl.svg.splash.logo.svg).append(logo);
                    logoPaper.select("#logo-full-mask")
                             .attr({filter:logoPaper.filter(Snap.filter.shadow(0,0,5, "rgba(0,0,0,.3)"))})
                    var t = Snap.matrix().scale(1.4);
                    var trans = logoPaper.transform(t.toTransformString());
                }
            });

1 个答案:

答案 0 :(得分:0)

好吧,经过一番愚弄,我自己解决了这个问题,但是因为我不清楚这个答案对于像我这样新的人来说是显而易见的,我选择发布它。

我试图缩放纸张对象本身,这不起作用(或者以某种无用的方式工作,这是无用的)。相反,需要缩放对象的元素;对于我的情况,最简单的方法是创建一组所有路径并缩放它,所以:

var t = Snap.matrix().scale(1.4);
logoPaper.group(logoPaper.selectAll("path")).transform(t);