Index: trunk/src/com/kitfox/svg/Tspan.java
===================================================================
--- trunk/src/com/kitfox/svg/Tspan.java	(revision 14328)
+++ trunk/src/com/kitfox/svg/Tspan.java	(revision 14331)
@@ -234,4 +234,9 @@
         }
 
+        if (font == null)
+        {
+            font = FontSystem.createFont("Serif", fontStyle, fontWeight, fontStyle);
+        }
+
         AffineTransform xform = new AffineTransform();
 
Index: trunk/src/com/kitfox/svg/util/FontSystem.java
===================================================================
--- trunk/src/com/kitfox/svg/util/FontSystem.java	(revision 14328)
+++ trunk/src/com/kitfox/svg/util/FontSystem.java	(revision 14331)
@@ -48,4 +48,5 @@
 import java.util.HashMap;
 import java.util.HashSet;
+import java.util.Locale;
 
 /**
@@ -58,7 +59,7 @@
     FontMetrics fm;
 
-    HashMap<String, Glyph> glyphCache = new HashMap<String, Glyph>();
+    HashMap<String, Glyph> glyphCache = new HashMap<>();
     
-    static HashSet<String> sysFontNames = new HashSet<String>();
+    static HashSet<String> sysFontNames = new HashSet<>();
 
     public static boolean checkIfSystemFontExists(String fontName)
@@ -66,5 +67,5 @@
         if (sysFontNames.isEmpty())
         {
-            for (String name: GraphicsEnvironment.getLocalGraphicsEnvironment().getAvailableFontFamilyNames())
+            for (String name: GraphicsEnvironment.getLocalGraphicsEnvironment().getAvailableFontFamilyNames(Locale.ENGLISH))
             {
                 sysFontNames.add(name);
@@ -80,11 +81,24 @@
         for (String fontName: families)
         {
-            if (checkIfSystemFontExists(fontName))
+            String javaFontName = mapJavaFontName(fontName);
+            if (checkIfSystemFontExists(javaFontName))
             {
-                return new FontSystem(fontName, fontStyle, fontWeight, fontSize);
+                return new FontSystem(javaFontName, fontStyle, fontWeight, fontSize);
             }
         }
 
         return null;
+    }
+
+    private static String mapJavaFontName(String fontName) {
+        if ("serif".equals(fontName)) {
+            return java.awt.Font.SERIF;
+        } else if ("sans-serif".equals(fontName)) {
+            return java.awt.Font.SANS_SERIF;
+        } else if ("monospace".equals(fontName)) {
+            return java.awt.Font.MONOSPACED;
+        } else {
+            return fontName;
+        }
     }
 
Index: trunk/src/com/kitfox/svg/xml/XMLParseUtil.java
===================================================================
--- trunk/src/com/kitfox/svg/xml/XMLParseUtil.java	(revision 14328)
+++ trunk/src/com/kitfox/svg/xml/XMLParseUtil.java	(revision 14331)
@@ -56,4 +56,5 @@
     static final Matcher fpMatch = Pattern.compile("([-+]?((\\d*\\.\\d+)|(\\d+))([eE][+-]?\\d+)?)(\\%|in|cm|mm|pt|pc|px|em|ex)?").matcher("");
     static final Matcher intMatch = Pattern.compile("[-+]?\\d+").matcher("");
+    static final Matcher quoteMatch = Pattern.compile("^'|'$").matcher("");
 
     /** Creates a new instance of XMLParseUtil */
@@ -320,5 +321,5 @@
 
             String key = styles[i].substring(0, colon).trim();
-            String value = styles[i].substring(colon + 1).trim();
+            String value = quoteMatch.reset(styles[i].substring(colon + 1).trim()).replaceAll("");
 
             map.put(key, new StyleAttribute(key, value));
