Reputation: 329
I'm loading svg into canvas and scale it to fit to the canvas. Then I need to access individual objects. Is this possible?
var canvas = new fabric.Canvas('c');
var url = 'http://fabricjs.com/assets/107.svg';
fabric.loadSVGFromURL(url, function(objects, options) {
var svg = fabric.util.groupSVGElements(objects, options);
svg.scaleToHeight(canvas.height);
canvas.add(svg);
svg.center();
svg.setCoords();
canvas.renderAll();
console.log(svg);
});
fabric.loadSVGFromURL(url, function(objects, options) {
var group = new fabric.Group(objects,options);
canvas.add(group);
group.scaleToHeight(canvas.getHeight());
group.center();
canvas.renderAll();
});
<script src="http://cdnjs.cloudflare.com/ajax/libs/fabric.js/1.5.0/fabric.min.js"></script>
<canvas id="c" width="500" height="200"></canvas>
Upvotes: 0
Views: 151
Reputation: 4819
Part of fabric js:
canvas.toSVG()
Then you can select invidual objects in the generated svg.
Upvotes: 1