8#ifndef SkPDFDevice_DEFINED
9#define SkPDFDevice_DEFINED
66 return sk_make_sp<SkPDFDevice>(this->
size(), fDocument);
113 std::unique_ptr<SkStreamAsset>
content();
136 bool fNeedsExtraSave =
false;
163 bool isContentEmpty();
165 void internalDrawGlyphRun(
167 void drawGlyphRunAsPath(
175 const SkMatrix& canvasTransformationMatrix);
183 void internalDrawPathWithFilter(
const SkClipStack& clipStack,
188 bool handleInversePath(
const SkPath& origPath,
const SkPaint&
paint,
bool pathIsMutable);
194 bool hasEmptyClip()
const {
return this->
cs().
isEmpty(this->
bounds()); }
bool isEmpty(const SkIRect &deviceBounds) const
static const SkMatrix & I()
std::unique_ptr< SkStreamAsset > content()
void drawRect(const SkRect &r, const SkPaint &paint) override
sk_sp< SkDevice > createDevice(const CreateInfo &, const SkPaint *) override
void drawPoints(SkCanvas::PointMode mode, size_t count, const SkPoint[], const SkPaint &paint) override
void drawMesh(const SkMesh &, sk_sp< SkBlender >, const SkPaint &) override
void onDrawGlyphRunList(SkCanvas *, const sktext::GlyphRunList &, const SkPaint &paint) override
void drawVertices(const SkVertices *, sk_sp< SkBlender >, const SkPaint &, bool) override
void drawRRect(const SkRRect &rr, const SkPaint &paint) override
void drawPaint(const SkPaint &paint) override
sk_sp< SkSurface > makeSurface(const SkImageInfo &, const SkSurfaceProps &) override
void drawDevice(SkDevice *, const SkSamplingOptions &, const SkPaint &) override
void drawSpecial(SkSpecialImage *, const SkMatrix &, const SkSamplingOptions &, const SkPaint &, SkCanvas::SrcRectConstraint) override
void drawSprite(const SkBitmap &bitmap, int x, int y, const SkPaint &paint)
void drawImageRect(const SkImage *, const SkRect *src, const SkRect &dst, const SkSamplingOptions &, const SkPaint &, SkCanvas::SrcRectConstraint) override
void drawOval(const SkRect &oval, const SkPaint &paint) override
void drawPath(const SkPath &origpath, const SkPaint &paint, bool pathIsMutable) override
std::unique_ptr< SkPDFDict > makeResourceDict()
void drawAnnotation(const SkRect &, const char key[], SkData *value) override
const SkMatrix & initialTransform() const
sk_sp< SkPDFDevice > makeCongruentDevice()
sk_sp< SkSpecialImage > makeSpecial(const SkBitmap &) override