使用fabric.js加载SVG中的错误图像大小

Posted

技术标签:

【中文标题】使用fabric.js加载SVG中的错误图像大小【英文标题】:Wrong image size in loadad SVG with fabric.js 【发布时间】:2015-08-12 08:48:40 【问题描述】:

我正在尝试使用 fabric.js 在画布中加载 SVG 文件:

svg_url2 = "http://localhost/fabric/bozza biglietto-03.svg";

canvas = new fabric.Canvas('canvas');
fabric.loadSVGFromURL(svg_url2, function(objects) 

canvas.add.apply(canvas, objects);
canvas.renderAll();

SVG 文件有一个已重新缩放的内联图像,但当它加载到画布中时,图像会以其原始大小呈现。 如果我在 kichensink 演示中粘贴相同的 SVG,它会以正确的尺寸显示。我错过了什么吗?

SVG:

SVG image

【问题讨论】:

【参考方案1】:

试试这个:

fabric.loadSVGFromURL(svg_url2, function(objects, options) 
   var obj = fabric.util.groupSVGElements(objects, options);
   canvas.add(obj).renderAll();
);

我应该工作。

【讨论】:

它不起作用;我已经试过了。此外,这不是我需要的,因为我希望对象保持未分组状态。

以上是关于使用fabric.js加载SVG中的错误图像大小的主要内容,如果未能解决你的问题,请参考以下文章

如何使用fabric js的toSVG数据在服务器端(PHP)创建SVG和PNG图像

Fabric.js:有啥方法可以在 JSON.stringify(canvas) 生成的 Json 中保存 url 而不是 svg 图像的路径?

Fabric.js:裁剪图像后的选择框

解析 SVG 路径元素中的 d 属性

使用 Fabric js 使背景图像适合画布大小

fabric.js 调整画布大小以适应屏幕