40 SkIRect r = pic->cullRect().round();
42 surf->getCanvas()->drawPicture(pic);
43 return surf->makeImageSnapshot();
53 const char magic_str[] =
"magic signature";
62 [](
const void* data,
size_t length,
void*) {
89 for (
size_t i = 0; i < std::size(sprocs); ++i) {
91 auto data = pic->serialize(&sproc);
145 memcpy(&pic, data, size);
164 auto d0 = p0->serialize(&sprocs);
175 for (
int i = 0; i < 20; ++i) {
217 if (!tf0 || !tf1 || tf0.get() == tf1.get()) {
230 auto data = pic->serialize(&procs);
static sk_sp< SkData > array_serial_proc(SkPicture *pic, void *ctx)
static sk_sp< SkPicture > make_pic(const std::function< void(SkCanvas *)> &drawer)
static sk_sp< SkPicture > array_deserial_proc(const void *data, size_t size, void *ctx)
static void test_pictures(skiatest::Reporter *reporter, sk_sp< SkPicture > p0, int count, bool skipRoot)
static SkSerialProcs makes(SkSerialPictureProc proc, void *ctx=nullptr)
static sk_sp< SkImage > picture_to_image(const sk_sp< SkPicture > &pic)
static SkDeserialProcs maked(SkDeserialPictureProc proc, const void *ctx=nullptr)
constexpr SkColor SK_ColorBLUE
constexpr SkColor SK_ColorRED
sk_sp< T > sk_ref_sp(T *obj)
#define DEF_TEST(name, reporter)
#define REPORTER_ASSERT(r, cond,...)
void drawColor(SkColor color, SkBlendMode mode=SkBlendMode::kSrcOver)
void drawPaint(const SkPaint &paint)
void drawString(const char str[], SkScalar x, SkScalar y, const SkFont &font, const SkPaint &paint)
void drawPicture(const SkPicture *picture)
void drawImage(const SkImage *image, SkScalar left, SkScalar top)
static sk_sp< SkData > MakeWithCString(const char cstr[])
static sk_sp< SkData > MakeWithCopy(const void *data, size_t length)
SkCanvas * beginRecording(const SkRect &bounds, sk_sp< SkBBoxHierarchy > bbh)
sk_sp< SkPicture > finishRecordingAsPicture()
static sk_sp< SkPicture > MakeFromData(const SkData *data, const SkDeserialProcs *procs=nullptr)
void removeShuffle(int index)
SK_API sk_sp< SkImage > DeferredFromEncodedData(sk_sp< SkData > encoded, std::optional< SkAlphaType > alphaType=std::nullopt)
SK_API bool Encode(SkWStream *dst, const SkPixmap &src, const Options &options)
SK_API sk_sp< SkSurface > Raster(const SkImageInfo &imageInfo, size_t rowBytes, const SkSurfaceProps *surfaceProps)
SkTDArray< SkPicture * > fArray
SkDeserialPictureProc fPictureProc
SkDeserialImageProc fImageProc
constexpr int32_t height() const
constexpr int32_t width() const
static SkImageInfo MakeN32Premul(int width, int height)
SkSerialImageProc fImageProc
SkSerialTypefaceProc fTypefaceProc
SkSerialPictureProc fPictureProc
static sk_sp< SkPicture > make_picture()