javascript - Download SVG with images -
i want download svg image in dom. i've searched around on stack overflow , common approach following these steps:
serialize svg xml string
var svgimage = document.getelementbyid('maskedimage') var svgxml = (new xmlserializer).serializetostring(svgimage) create javascript image xml string source
var img = new image(); var svgblob = new blob([data], {type: 'image/svg+xml;charset=utf-8'}); var url = domurl.createobjecturl(svgblob);  img.onload = function () {     /* next steps go here */ }  img.src = url; draw image on canvas
var canvas = document.createelement('canvas') var ctx = canvas.getcontext('2d') canvas.width = width canvas.height = height ctx.drawimage(img, 0,0, width, height) dump canvas url , make user download that
window.open(canvas.todataurl('image/png'))  // not point of question the thing is, svg has <image> tag svg mask (which black , white <image>). make things worse, 1 of these images has object url (those returned url.createobjecturl(...)). these requirements , cannot changed.
following mentioned process, initial svg "looses" images on second step. image img doesn't display <image>, if remove mask , display.
i've tried removing mask , changing <image> url created url.createobjecturl inline image (data:image/png;base64,...), dummy url (http://www.tuvotacion.com/imagenes_unicas/cual-perrito-es-mas-tierno-450089.jpg) , i'm still not able display images.
note question not duplicate of questions asking how download svg, special case when have images.
the question
how can "translate" svg image without loosing <image>s, can print on canvas?
 
 
Comments
Post a Comment