Why is my SVG failing to load in Vector Asset Studio

49,552

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:

Inkscape Document Properties

Share:
49,552
Luke Allison
Author by

Luke Allison

Updated on February 14, 2021

Comments

  • Luke Allison
    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>
    

    enter image description here

  • DenisGL
    DenisGL almost 8 years
    Well... Inkscape is free, and often used as the "poor man" 's Adobe Illustrator.
  • AdamHurwitz
    AdamHurwitz about 7 years
    Not a solution if you are using Sketch.
  • AdamHurwitz
    AdamHurwitz over 6 years
    How can I export an image using sketch?
  • Danail Gabenski
    Danail Gabenski almost 6 years
    Yep 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
    xarlymg89 almost 6 years
    For SVGs from flaticon.com seems to be working perfectly so far. Already imported more than 10 SVGs following this guidelines.
  • Samuel Hulla
    Samuel Hulla almost 6 years
    Hey, 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
    Vikas Acharya almost 4 years
    this 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.