Raphael.js を使用して、Javascript (実際には Coffeescript) から SVG 描画を生成しています。
ただし、最初の <svg> タグ内にネストされた 2 番目の <svg> タグ内に配置することにより、自動的にスケーリングされたサブドローイングを含めることができるようにしたいと考えています。残念ながら、四角形やパスなどを追加できる Raphael Paper オブジェクトには、svg を追加するオプションがありません。
次のコードを使用して、タグを JavaScript の DOM に直接追加しようとしました。
res = document.createElement("svg")
res.setAttribute("x",x)
res.setAttribute("y",y)
res.setAttribute("width",width)
res.setAttribute("height",height)
res.setAttribute("viewBox","0 0 100 100")
res.innerHTML = someInnerSVG
@paper.canvas.appendChild(res)
これにより、DOM が期待どおりに更新され、新しい SVG タグがメインの外側の SVG の子として追加されるようです。ただし、この内部は実際には画面に表示されません。(私の内側の SVG パスは 0 0 100 100 内でスケーリングされるため、viewBox 内にあります。)
Raphael によって作成された、外側の SVG の残りの描画が表示されます。しかし、内側のものは何もありません。
私がしようとしていることが可能であるべきですか?私が間違っていることは何か分かりますか?