Class Svg2Vector
java.lang.Object
com.android.ide.common.vectordrawable.Svg2Vector
public class Svg2Vector
extends java.lang.Object
Converts SVG to VectorDrawable's XML.
There are 2 major functions:
1. parse(file)
This include parse the .svg file and build an internal tree. The optimize this tree.
2. writeFile()
This is traversing the whole tree, and write the group / path info into the XML.
-
Field Summary
Fields Modifier and Type Field Description static com.google.common.collect.ImmutableMap<java.lang.String,java.lang.String>gradientMapstatic com.google.common.collect.ImmutableMap<java.lang.String,java.lang.String>presentationMapstatic java.lang.StringSVG_CIRCLEstatic java.lang.StringSVG_CLIPstatic java.lang.StringSVG_CLIP_PATHstatic java.lang.StringSVG_CLIP_PATH_ELEMENTstatic java.lang.StringSVG_CLIP_RULEstatic java.lang.StringSVG_Dstatic java.lang.StringSVG_DISPLAYstatic java.lang.StringSVG_ELLIPSEstatic java.lang.StringSVG_FILLstatic java.lang.StringSVG_FILL_OPACITYstatic java.lang.StringSVG_FILL_RULEstatic java.lang.StringSVG_GROUPstatic java.lang.StringSVG_LINEstatic java.lang.StringSVG_MASKstatic java.lang.StringSVG_OPACITYstatic java.lang.StringSVG_PATHstatic java.lang.StringSVG_POINTSstatic java.lang.StringSVG_POLYGONstatic java.lang.StringSVG_POLYLINEstatic java.lang.StringSVG_RECTstatic java.lang.StringSVG_STROKEstatic java.lang.StringSVG_STROKE_LINECAPstatic java.lang.StringSVG_STROKE_LINEJOINstatic java.lang.StringSVG_STROKE_OPACITYstatic java.lang.StringSVG_STROKE_WIDTHstatic java.lang.StringSVG_STYLE -
Constructor Summary
Constructors Constructor Description Svg2Vector() -
Method Summary
Modifier and Type Method Description static java.lang.StringparseSvgToXml(java.io.File inputSvg, java.io.OutputStream outStream)Converts a SVG file into VectorDrawable's XML content, if no error is found.
-
Field Details
-
SVG_POLYGON
public static final java.lang.String SVG_POLYGON- See Also:
- Constant Field Values
-
SVG_POLYLINE
public static final java.lang.String SVG_POLYLINE- See Also:
- Constant Field Values
-
SVG_RECT
public static final java.lang.String SVG_RECT- See Also:
- Constant Field Values
-
SVG_CIRCLE
public static final java.lang.String SVG_CIRCLE- See Also:
- Constant Field Values
-
SVG_LINE
public static final java.lang.String SVG_LINE- See Also:
- Constant Field Values
-
SVG_PATH
public static final java.lang.String SVG_PATH- See Also:
- Constant Field Values
-
SVG_ELLIPSE
public static final java.lang.String SVG_ELLIPSE- See Also:
- Constant Field Values
-
SVG_GROUP
public static final java.lang.String SVG_GROUP- See Also:
- Constant Field Values
-
SVG_STYLE
public static final java.lang.String SVG_STYLE- See Also:
- Constant Field Values
-
SVG_DISPLAY
public static final java.lang.String SVG_DISPLAY- See Also:
- Constant Field Values
-
SVG_CLIP_PATH_ELEMENT
public static final java.lang.String SVG_CLIP_PATH_ELEMENT- See Also:
- Constant Field Values
-
SVG_D
public static final java.lang.String SVG_D- See Also:
- Constant Field Values
-
SVG_STROKE
public static final java.lang.String SVG_STROKE- See Also:
- Constant Field Values
-
SVG_STROKE_OPACITY
public static final java.lang.String SVG_STROKE_OPACITY- See Also:
- Constant Field Values
-
SVG_STROKE_LINEJOIN
public static final java.lang.String SVG_STROKE_LINEJOIN- See Also:
- Constant Field Values
-
SVG_STROKE_LINECAP
public static final java.lang.String SVG_STROKE_LINECAP- See Also:
- Constant Field Values
-
SVG_STROKE_WIDTH
public static final java.lang.String SVG_STROKE_WIDTH- See Also:
- Constant Field Values
-
SVG_FILL
public static final java.lang.String SVG_FILL- See Also:
- Constant Field Values
-
SVG_FILL_OPACITY
public static final java.lang.String SVG_FILL_OPACITY- See Also:
- Constant Field Values
-
SVG_FILL_RULE
public static final java.lang.String SVG_FILL_RULE- See Also:
- Constant Field Values
-
SVG_OPACITY
public static final java.lang.String SVG_OPACITY- See Also:
- Constant Field Values
-
SVG_CLIP
public static final java.lang.String SVG_CLIP- See Also:
- Constant Field Values
-
SVG_CLIP_PATH
public static final java.lang.String SVG_CLIP_PATH- See Also:
- Constant Field Values
-
SVG_CLIP_RULE
public static final java.lang.String SVG_CLIP_RULE- See Also:
- Constant Field Values
-
SVG_MASK
public static final java.lang.String SVG_MASK- See Also:
- Constant Field Values
-
SVG_POINTS
public static final java.lang.String SVG_POINTS- See Also:
- Constant Field Values
-
presentationMap
public static final com.google.common.collect.ImmutableMap<java.lang.String,java.lang.String> presentationMap -
gradientMap
public static final com.google.common.collect.ImmutableMap<java.lang.String,java.lang.String> gradientMap
-
-
Constructor Details
-
Svg2Vector
public Svg2Vector()
-
-
Method Details
-
parseSvgToXml
public static java.lang.String parseSvgToXml(java.io.File inputSvg, java.io.OutputStream outStream) throws java.io.IOExceptionConverts a SVG file into VectorDrawable's XML content, if no error is found.- Parameters:
inputSvg- the input SVG fileoutStream- the converted VectorDrawable's content. This can be empty if there is any error found during parsing- Returns:
- the error message that combines all logged errors and warnings, or an empty string if there were no errors
- Throws:
java.io.IOException
-