【问题标题】:Can't set stroke svg path with Fabric.js in Node.js无法在 Node.js 中使用 Fabric.js 设置描边 sv​​g 路径
【发布时间】:2013-11-21 08:02:16
【问题描述】:

我使用 FabricJS 和 NodeJS 来呈现 SVG 路径。 当我设置strokestrokeSize 时,它没有显示笔划。我在一个矩形上对其进行了测试,效果很好。我的代码:

var fabric = require('fabric').fabric,
    http   = require('http'),
    url    = require('url'),
    PORT   = 9099;

    var server = http.createServer(function (request, response) {
    var params = url.parse(request.url, true);
    var canvas = fabric.createCanvasForNode(400, 600);

    response.writeHead(200, { 'Content-Type': 'image/png' });

    canvas.backgroundColor = "blue";
    fabric.loadSVGFromURL('http://localhost/test/html5/fabric/img/animal1.svg', function(ob,op){
        var element = new fabric.PathGroup(ob, op);
        element.set({
        top:         100,
        left:        100,
        scaleX:      6,
        scaleY:      6,
        fill:        '#ddd',
        strokeWidth: 5,
        stroke:      '#555'
        });
        canvas.add(element);

        var rect = new fabric.Rect({
           left:            300,
           top:             100,
           width:           100,
           height:          100,
           fill:            '#ddd',
           strokeWidth:     3,
           strokeDashArray: [10, 5],
           stroke:          '#555'
        });
        canvas.add(rect);

        canvas.renderAll();

        var stream = canvas.createPNGStream();
        stream.on('data', function(chunk) {
            response.write(chunk);
        });
        stream.on('end', function() {
            response.end();
        });

    });
});

server.listen(PORT);

【问题讨论】:

    标签: node.js path fabricjs stroke


    【解决方案1】:

    试试这个:

    fabric.loadSVGFromURL('http://localhost/test/html5/fabric/img/animal1.svg', function(objects,options){
        var element = fabric.util.groupSVGElements(objects, options);
        element.set({
        top:         100,
        left:        100,
        scaleX:      6,
        scaleY:      6,
        fill:        '#ddd',
        strokeWidth: 5,
        stroke:      '#555'
        });
        canvas.add(element).renderAll();
    

    【讨论】:

    • 感谢您的帮助。我试过了,但不是显示笔画!!
    猜你喜欢
    • 2020-02-07
    • 2019-04-30
    • 1970-01-01
    • 2023-01-25
    • 2013-07-22
    • 1970-01-01
    • 2017-02-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多