5df4934b3e
Changes over original:
- conditionalize ownership in SkPictureRecorder
- conditionalize ownership in SkCanvasStateUtils
This reverts commit b613c266df
.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=4742
Change-Id: Ib25514d6f546c69b6650b5c957403b04f7380dc2
Reviewed-on: https://skia-review.googlesource.com/4742
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
38 lines
1.1 KiB
C++
38 lines
1.1 KiB
C++
/*
|
|
* Copyright 2015 Google Inc.
|
|
*
|
|
* Use of this source code is governed by a BSD-style license that can be
|
|
* found in the LICENSE file.
|
|
*/
|
|
|
|
#ifndef SkSVGCanvas_DEFINED
|
|
#define SkSVGCanvas_DEFINED
|
|
|
|
#include "SkCanvas.h"
|
|
|
|
class SkXMLWriter;
|
|
|
|
class SK_API SkSVGCanvas {
|
|
public:
|
|
/**
|
|
* Returns a new canvas that will generate SVG commands from its draw calls, and send
|
|
* them to the provided xmlwriter. Ownership of the xmlwriter is not transfered to the canvas,
|
|
* but it must stay valid during the lifetime of the returned canvas.
|
|
*
|
|
* The canvas may buffer some drawing calls, so the output is not guaranteed to be valid
|
|
* or complete until the canvas instance is deleted.
|
|
*
|
|
* The 'bounds' parameter defines an initial SVG viewport (viewBox attribute on the root
|
|
* SVG element).
|
|
*/
|
|
static std::unique_ptr<SkCanvas> Make(const SkRect& bounds, SkXMLWriter*);
|
|
|
|
#ifdef SK_SUPPORT_LEGACY_CANVAS_IS_REFCNT
|
|
static SkCanvas* Create(const SkRect& bounds, SkXMLWriter* writer) {
|
|
return Make(bounds, writer).release();
|
|
}
|
|
#endif
|
|
};
|
|
|
|
#endif
|