filename.cairoSvgSurfaceCreate(filename, width.in.points, height.in.points)filenameNULL may be
           used to specify no output. This will generate a SVG surface that
           may be queried and used as a source, without generating a
           temporary file.width.in.pointsheight.in.pointsCairoSurface]  a pointer to the newly created surface. The caller
owns the surface and should call cairoSurfaceDestroy when done
with it.
This function always returns a valid pointer, but it will return a
pointer to a "nil" surface if an error such as out of memory
occurs. You can use cairoSurfaceStatus to check for this.