Ich versuche Svg mit Raphael.js generiert in PNG-Bild zu konvertieren. Nun, ich habe die SVG in ein Bild umgewandelt, wenn SVG keine Muster- und Bildkomponente hat. Wenn ich dann diese beiden Komponenten in SVG einfüge, geht etwas schief und die Konvertierung schlägt fehl. Komplette Geige isthere. Selbst wenn ich das generierte svg speichere und im Browser öffne, ohne das Bild zu konvertieren, wird das Bild und das Muster nicht gerendert.SVG mit Muster und Bildelementkonvertierung nach PNG Bild fehlgeschlagen
Der Code-Snippet ist:
var r = Raphael(document.getElementById("cus"), 390, 253);
r.setViewBox(-5, -2, 228, 306);
for (var outline in doorMatOutline) {
var path = r.path(doorMatOutline[outline].path);
//path.attr({fill: 'url('+patternuri+')'}); //adding pattern
}
//adding image
var img = r.image(imageuri, 5 ,10 ,100 ,100);
var svg = $('#cus').html().replace(/>\s+/g, ">").replace(/\s+</g, "<");
canvg('cvs', svg, {
ignoreMouse: true,
ignoreAnimation: true
});
var canvas = document.getElementById('cvs');
var img = canvas.toDataURL("image/png");
$("#resImg").attr('src', img);
$("#cus").hide();
Bild aussehen wie Ziegel in png. – kinkajou
Es funktioniert in Firefox und Chrome. Es gibt Fehler im IE, die sich auf das canvg-Skript beziehen. Ich werde schauen, aber nicht sicher, ob es eine einfache Lösung dafür geben wird. – Ben
Aktualisierte Antwort zu arbeiten in IE, hoffentlich wird es für Sie arbeiten. – Ben