code: def export(self, swf, force_stroke=False):
          
          self.svg = self._e.svg(version=SVG_VERSION)
          self.force_stroke = force_stroke
          self.defs = self._e.defs()
          self.root = self._e.g()
          self.svg.append(self.defs)
          self.svg.append(self.root)
          self.shape_exporter.defs = self.defs
          self._num_filters = 0
          self.fonts = dict([(x.characterId,x) for x in swf.all_tags_of_type(TagDefineFont)])
          self.fontInfos = dict([(x.characterId,x) for x in swf.all_tags_of_type(TagDefineFontInfo)])
  
          # GO!
          super(SVGExporter, self).export(swf, force_stroke)
  
          # Setup svg @width, @height and @viewBox
          # and add the optional margin
          self.bounds = SVGBounds(self.svg)
          self.svg.set("width", "%dpx" % round(self.bounds.width))
          self.svg.set("height", "%dpx" % round(self.bounds.height))
          if self._margin > 0:
              self.bounds.grow(self._margin)
          vb = [self.bounds.minx, self.bounds.miny,
                self.bounds.width, self.bounds.height]
          self.svg.set("viewBox", "%s" % " ".join(map(str,vb)))
  
          # Return the SVG as StringIO
          return self._serialize()
docs: Exports the specified SWF to SVG.
  
          @param swf  The SWF.
          @param force_stroke Whether to force strokes on non-stroked fills.