8#ifndef SkSVGRenderContext_DEFINED
9#define SkSVGRenderContext_DEFINED
32 : fViewport(viewport), fDPI(dpi) {}
104 fBorrowed = std::move(*fOwner);
111 *fOwner = std::move(fBorrowed);
119 explicit operator bool()
const {
return !!fBorrowed; }
132 BorrowedNode findNodeById(
const SkSVGIRI&)
const;
143 return fResourceProvider;
166 return fTextShapingFactory->makeShaper(this->
fontMgr());
171 uint8_t bidiLevel)
const {
173 return fTextShapingFactory->makeBidiRunIterator(
utf8, utf8Bytes, bidiLevel);
177 size_t utf8Bytes)
const {
180 return fTextShapingFactory->makeScriptRunIterator(
utf8, utf8Bytes, unknownScript);
185 void*
operator new(size_t) =
delete;
186 void*
operator new(size_t,
void*) =
delete;
189 void applyOpacity(
SkScalar opacity, uint32_t
flags,
bool hasFilter);
205 int fCanvasSaveCount;
211 float fDeferredPaintOpacity = 1;
214 const OBBScope fOBBScope;
static constexpr SkFourByteTag SkSetFourByteTag(char a, char b, char c, char d)
static sk_sp< SkFontMgr > RefEmpty()
void setViewPort(const SkSize &viewport)
const SkSize & viewPort() const
SkSVGLengthContext(const SkSize &viewport, SkScalar dpi=90)
BorrowedNode(sk_sp< SkSVGNode > *node)
const SkSVGNode * get() const
const SkSVGNode & operator*() const
const SkSVGNode * operator->() const
SkSVGLengthContext * writableLengthContext()
sk_sp< SkFontMgr > fontMgr() const
const SkSVGPresentationContext & presentationContext() const
std::unique_ptr< SkShaper::ScriptRunIterator > makeScriptRunIterator(const char *utf8, size_t utf8Bytes) const
std::unique_ptr< SkShaper::BiDiRunIterator > makeBidiRunIterator(const char *utf8, size_t utf8Bytes, uint8_t bidiLevel) const
SkCanvas * canvas() const
const SkPath * clipPath() const
const SkSVGLengthContext & lengthContext() const
std::unique_ptr< SkShaper > makeShaper() const
const sk_sp< skresources::ResourceProvider > & resourceProvider() const
sk_sp< SkFontMgr > fontMgr
FlutterSemanticsFlag flags
SkSVGPresentationAttributes fInherited
SkSVGPresentationContext & operator=(const SkSVGPresentationContext &)=default
SkSVGPresentationContext(const SkSVGPresentationContext &)=default
const SkSVGRenderContext * fCtx