キャンバスにsvgをレンダリングしています(後でpngとして保存する)。画像付きキャンバスにsvgをレンダリング
<image x="10" y="10" xlink:href="data:image/jpeg;base64, ...
しかしXLINKとしてURLを使用する場合:
var svg = document.getElementById("mysvg");
var svgData = new XMLSerializer().serializeToString(svg);
var canvas = <any>document.getElementById("canvas");
var ctx = canvas.getContext("2d");
var img = document.createElement("img");
img.setAttribute("src", "data:image/svg+xml;base64," + btoa(svgData));
img.onload = function() {
ctx.drawImage(img, 0, 0);
console.log(canvas.toDataURL("image/png"));
};
これは、base64エンコードされた画像で動作します(
<image x="10" y="10" xlink:href="assets/myimage.png" />
あなたはlocalhostでこれを試していますか? – fdreger
はい、私はlocalhostで使用します – daniel