gpt4 book ai didi

javascript - 加载 svg 文件(xml)并使用 javascript 提取特定信息

转载 作者:行者123 更新时间:2023-11-30 18:05:34 26 4
gpt4 key购买 nike

我正在尝试使用 jquery/javascript 获取 svg 文件svg 示例:

<svg width="111" height="123" xmlns="http://www.w3.org/2000/svg">
<g>
<title>Layer 1</title>
<rect fill="#ffffff" stroke="#000000" stroke-width="3" x="1.5" y="1.5"width="108.00001" height="119.99999" id="svg_1" rescale="none" move="Static"/>
<text text_pos="midcenter" xml:space="preserve" text-anchor="middle" font-family="Fantasy" font-size="14" id="Actor Role name" y="68" x="55" stroke-width="0" stroke="#000000" fill="#000000" rescale="none" move="Static">Actor Role</text>
</g>
</svg>

然后使用类似这样的方法从文件中提取数据

     $.get(file_url, function(data) {
var teste=data;
},'xml')// or use text instead of xml

然后获取所有元素,如 rect 或 text并说得到类似的东西(排除内部 ' ' 只是为了知道值的来源):

“元素”矩形,“重新缩放”无,“移动”静态

对于文本(不包括内部的“”):'Element' rect, 'rescale' none, 'move' static, 'text_pos' midcenter ,'id' Actor Role name, 'node value' Actor Role

已部分解决

    $.get(file_url, function(data) {
var teste=data; //all data
rect1=$('<g>').append($(teste).find("text").attr("id")).html();
rect2=rect1+"-"+$('<g>').append($(teste).find("text").attr("text_pos")).html();
alert(rect2);
});
alert(rect2);

问题发现它没有传递 $.get 之外的变量数据

首先alert(rect2);给出正确的数据

第二个 alert(rect2); 给我 undefined

任何人都知道为什么它不提供全局变量 :X已经尝试在外部创建变量但也不起作用

很抱歉忘记更改注释:f 现在它是正确的

最佳答案

这就是我加载 SVG 文件的方式:

$( document ).ready( function() {
$.get("path-to-svg.svg", null, function(data){
var svgNode = $("svg", data);
var docNode = document.adoptNode(svgNode[0]);
var pageNode = $("#element-to-hold-svg");
pageNode.html(docNode);
}, 'xml');
});

关于javascript - 加载 svg 文件(xml)并使用 javascript 提取特定信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15909343/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com