Flutter Engine
The Flutter Engine
Loading...
Searching...
No Matches
Public Member Functions | List of all members
DM::SVGSink Class Reference

#include <DMSrcSink.h>

Inheritance diagram for DM::SVGSink:
DM::Sink

Public Member Functions

 SVGSink (int pageIndex=0)
 
Result draw (const Src &, SkBitmap *, SkWStream *, SkString *) const override
 
const char * fileExtension () const override
 
SinkFlags flags () const override
 
- Public Member Functions inherited from DM::Sink
virtual ~Sink ()
 
virtual void setColorSpace (sk_sp< SkColorSpace >)
 
virtual bool serial () const
 
virtual SkColorInfo colorInfo () const
 

Detailed Description

Definition at line 553 of file DMSrcSink.h.

Constructor & Destructor Documentation

◆ SVGSink()

DM::SVGSink::SVGSink ( int  pageIndex = 0)

Definition at line 2094 of file DMSrcSink.cpp.

2094: fPageIndex(pageIndex) {}

Member Function Documentation

◆ draw()

Result DM::SVGSink::draw ( const Src src,
SkBitmap ,
SkWStream dst,
SkString  
) const
overridevirtual

Implements DM::Sink.

Definition at line 2096 of file DMSrcSink.cpp.

2096 {
2097#if defined(SK_ENABLE_SVG)
2098 if (src.pageCount() > 1) {
2099 int pageCount = src.pageCount();
2100 if (fPageIndex > pageCount - 1) {
2101 return Result::Fatal("Page index %d too high for document with only %d pages.",
2102 fPageIndex, pageCount);
2103 }
2104 }
2105 return src.draw(fPageIndex,
2107 SkIntToScalar(src.size().height())),
2108 dst)
2109 .get(),
2110 /*GraphiteTestContext=*/nullptr);
2111#else
2112 (void)fPageIndex;
2113 return Result::Fatal("SVG sink is disabled.");
2114#endif // SK_ENABLE_SVG
2115}
#define SkIntToScalar(x)
Definition SkScalar.h:57
static std::unique_ptr< SkCanvas > Make(const SkRect &bounds, SkWStream *, uint32_t flags=0)
static constexpr SkRect MakeWH(float w, float h)
Definition SkRect.h:609

◆ fileExtension()

const char * DM::SVGSink::fileExtension ( ) const
inlineoverridevirtual

Implements DM::Sink.

Definition at line 558 of file DMSrcSink.h.

558{ return "svg"; }

◆ flags()

SinkFlags DM::SVGSink::flags ( ) const
inlineoverridevirtual

Implements DM::Sink.

Definition at line 559 of file DMSrcSink.h.

559{ return SinkFlags{ SinkFlags::kVector, SinkFlags::kDirect }; }

The documentation for this class was generated from the following files: