angular - Kan inte ladda ner SVG som PNG i IE
Jag skapade ett diagram i d3. Enligt mina krav måste jag tillåta nedladdning som PNG i alla webbläsare. Jag använder saveSvgAsPng.js för det.
saveSvgAsPng(document.getElementById("sample"), "sample.png", { width: '50%' });
Jag kan ladda ner det i Chrome och Firefox, men jag kan inte ladda ner det i IE.
När jag kontrollerar konsolen får jag följande fel:
Okänt teckensnittsformat för https://fonts.googleapis.com/css?family=Karla; Typsnitt kanske inte fungerar korrekt
Renderade SVG-bilder kan inte laddas ner i denna webbläsare.
Jag vet inte om jag missade några parametrar att skicka med.
Svar #1
Enligt saveSvgAsPng på GitHub
Internet Explorer kommer bara att fungera om canvg skickas in, annars kommer det att kasta ett SecurityError när man kallar på toDataURL på en canvas som har skrivits till. [...]
Så du måste inkludera ditt script canvg och sedan skicka det som en parameter
var svg = document.querySelector('sample');
saveSvgAsPng(svg, "sample.png", {canvg:window.canvg});
