Why is my SVG failing to load in Vector Asset Studio
Solution 1
Importing the .svg files produced in Inkscape into Adobe Illustrator and exporting them fixed this issue 100%.
Solution 2
You need to change the width and height of the svg from mm
to use px
instead. This is a current workaround pending when the issue is fixed.
There is already a filed bug report here
Solution 3
My SVG was being created (from an online website) with ,
in the viewbox
tag.
i.e:
viewBox="0, 0, 350,450"
changing this to:
viewBox="0 0 350 450"
allowed Android Studio to import it
Solution 4
After spending some hours, I figured out the problem, and even using external svg2vectordrawable scripts couldn't help.
The size of the shapes and/or the document's page size cannot contain floating numbers in its width/height such as 14.134 or 3.5
Meaning the width and height of the shape and the page must be integers!
Solution 5
As @Kingsley Adio said, you must use px
units for your SVG document.
In Inkscape, I managed to do it by creating a custom page size and setting the output unit to px
:
Luke Allison
Updated on February 14, 2021Comments
-
Luke Allison about 3 years
The SVG below is failing to open in Android Studio's Vector Asset Studio in resulting in the error:
"Empty preview image! EXCEPTION in parsing TareSymbol.svg: For input string: "8.7337904mm"Exception while parsing XML file: Premature end of file."
Why is the following SVG file not compatible with Vector Asset Studio?
<?xml version="1.0" encoding="UTF-8" standalone="no"?> <svg xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:cc="http://creativecommons.org/ns#" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:svg="http://www.w3.org/2000/svg" xmlns="http://www.w3.org/2000/svg" version="1.1" id="svg20235" viewBox="0 0 61.500162 30.946501" height="8.7337904mm" width="17.356712mm"> <defs id="defs20237" /> <metadata id="metadata20240"> <rdf:RDF> <cc:Work rdf:about=""> <dc:format>image/svg+xml</dc:format> <dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> <dc:title></dc:title> </cc:Work> </rdf:RDF> </metadata> <g transform="translate(-109.24987,-351.17467)" id="layer1"> <path d="m 145.03542,367.34167 10.897,-4.49325 -0.009,3.30587 13.69124,0.0372 1.13537,0 0,2.1285 -1.13537,0 -13.69662,-0.0373 -0.009,3.33988 -10.87325,-4.281 z m -13.38814,-13.15875 0,-3.00825 16.97389,0 0,3.00825 -6.8995,0 0,27.93825 -3.15214,0 0,-27.93825 -6.92225,0 z m 3.31725,13.15875 -10.897,4.49325 0.009,-3.3055 -13.69129,-0.0373 -1.13537,0 0,-2.1285 1.13537,0 13.69662,0.0372 0.009,-3.33988 10.87325,4.28063 z" style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none" id="path20212" /> </g> </svg>
-
DenisGL almost 8 yearsWell... Inkscape is free, and often used as the "poor man" 's Adobe Illustrator.
-
AdamHurwitz about 7 yearsNot a solution if you are using Sketch.
-
AdamHurwitz over 6 yearsHow can I export an image using sketch?
-
Danail Gabenski almost 6 yearsYep this is it. Thanks, any idea if they added this to the most recent version 3.1.2 and it wasn't there before ?
-
xarlymg89 almost 6 yearsFor SVGs from flaticon.com seems to be working perfectly so far. Already imported more than 10 SVGs following this guidelines.
-
Samuel Hulla almost 6 yearsHey, thanks for contributing Unfortunately your question could be classified as low effort, albeit it could be technically correct. Please try to include details into your answer, such as step-by-step way to change the floating point symbol, so it can be used as a proper answer
-
Vikas Acharya almost 4 yearsthis is the answer. kindly don't waste time on spending time on other answers. use pngtosvg.com to convert image to svg and follow above answer for exact svg.