Home | History | Annotate | Download | only in svg
      1 /*
      2  * Copyright 2015 Google Inc.
      3  *
      4  * Use of this source code is governed by a BSD-style license that can be
      5  * found in the LICENSE file.
      6  */
      7 
      8 #ifndef SkSVGCanvas_DEFINED
      9 #define SkSVGCanvas_DEFINED
     10 
     11 #include "SkCanvas.h"
     12 
     13 class SkXMLWriter;
     14 
     15 class SK_API SkSVGCanvas {
     16 public:
     17     /**
     18      *  Returns a new canvas that will generate SVG commands from its draw calls, and send
     19      *  them to the provided xmlwriter. Ownership of the xmlwriter is not transfered to the canvas,
     20      *  but it must stay valid during the lifetime of the returned canvas.
     21      *
     22      *  The canvas may buffer some drawing calls, so the output is not guaranteed to be valid
     23      *  or complete until the canvas instance is deleted.
     24      *
     25      *  The 'bounds' parameter defines an initial SVG viewport (viewBox attribute on the root
     26      *  SVG element).
     27      */
     28     static SkCanvas* Create(const SkRect& bounds, SkXMLWriter*);
     29 };
     30 
     31 #endif
     32