У меня есть файл SVG, содержащий:Проблема с Nokogiri :: Slop получает атрибуты узла?
<text x="10" y="20"
style="font-family: Helvetica;
font-size : 24;
fill : #ff0000;
stroke : #000000;">SVG text styling</text>
<text x="85" y="150"
style="font-family: Helvetica;
font-size : 24;
fill : #ff0000;
stroke : #000000;">This is the second piece of text</text>
<text x="45" y="250"
style="font-family: Helvetica;
font-size : 24;
fill : #ff0000;
stroke : #000000;">This is the third piece of text</text>
<text x="45" y="250"
style="font-family: Helvetica;
font-size : 24;
fill : #ff0000;
stroke : #000000;">test text</text>
<text x="45" y="250"
style="font-family: Helvetica;
font-size : 24;
fill : #ff0000;
stroke : #000000;">data data</text>
<text x="45" y="250"
style="font-family: Helvetica;
font-size : 24;
fill : #ff0000;
stroke : #000000;">txt txt txt</text>
Я хочу, чтобы получить некоторые данные из него. Я использую этот код с помощью Nokogiri::Slop
:
@test = Nokogiri::Slop(File.open("./file.svg"))
и этого Еврорадио:
<% @test.xpath('//text').map do |i|%>
<%=i%>
<% end %>
Это работает, но моя проблема в том, как получить ребенок font-family,font-size,fill,stroke
Я попробовал этот код
<%=i.("[@stroke]").text.content %>
но не работает.
Определения «не работает». Что происходит, когда вы запускаете его? Вы получаете исключение? Что говорит это исключение? Выполняется ли это, но не генерирует нужный результат? Если это так, покажите этот вывод и объясните, что с ним не так. –