这是一个特定于项目的问题,与我对svg-edit ..
的实施有关我已经实现了更新的'ext-server_opensave.js'(来自this问题),以便用户能够从他们的文件系统上传光栅图像。
我在'ext-server_opensave.js'遇到问题的代码片段如下:
function importImage(url) {
var newImage = svgCanvas.addSvgElementFromJson({
"element": "image",
"attr": {
"x": 0,
"y": 0,
"width": 0,
"height": 0,
"id": svgCanvas.getNextId(),
"style": "pointer-events:inherit"
}
});
svgCanvas.clearSelection();
svgCanvas.addToSelection([newImage]);
svgCanvas.setImageURL(url);
}
在设置宽度和高度属性时,宽度和高度属性不起作用,其他属性确实有效。这是一个奇怪的错误 - 第一个图像上传以原始大小上传文件,然后每个后续图像上传调整为48x48。如果我在上面粘贴的那个方法中设置宽度和高度值,我会看到那些尺寸的图像瞬间,然后它会调整回48x48。基本上,在svgCanvas.addSvgElementFromJson
和svgCanvas.addToSelection
之后调整图像大小的链上有一些处理程序/方法,我无法弄清楚在调试javascript的几个小时之后的位置。
答案 0 :(得分:0)
只是一个疯狂的镜头,但也许在第128行添加......
case 'import_img':
svgCanvas.setGoodImage(str64);
importImage(str64);
break;
setGoodImage()
在插入新图像时设置默认图像大小。您看到的48x48尺寸是SVG Edit徽标的大小。