我正在使用 nokogiri
生成 svg 图片。我想添加正确的 xml 序言和 svg DTD 声明以获得如下内容:
<?xml version="1.0" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg>
...
使用 builder
我可以使用 instruct!
和 declare!
但我想坚持使用 nokogiri
因为我在我的项目中将它用于其他目的,我想保持低要求。你有什么想法吗?
谢谢
最佳答案
以下内容来自 Nokogiri::XML::Builder page 底部的注释(可能是最近添加的),我认为这可以解决问题:
builder = Nokogiri::XML::Builder.new do |xml|
xml.doc.create_internal_subset(
'html',
"-//W3C//DTD HTML 4.01 Transitional//EN",
"http://www.w3.org/TR/html4/loose.dtd"
)
xml.root do
xml.foo
end
end
puts builder.to_xml
关于xml - 使用 nokogiri 构建器添加一个 dtd,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1961461/