| Index: src/images/SkScaledBitmapSampler.h
|
| diff --git a/src/images/SkScaledBitmapSampler.h b/src/images/SkScaledBitmapSampler.h
|
| index e6c4577174c3551afbdf1b228b658d1b668113fe..90c4142bdfb444db79cd2059c1b03afe5328e9cb 100644
|
| --- a/src/images/SkScaledBitmapSampler.h
|
| +++ b/src/images/SkScaledBitmapSampler.h
|
| @@ -34,11 +34,24 @@ public:
|
| kRGB_565 // 2 bytes per pixel
|
| };
|
|
|
| + struct Options {
|
| + bool fDither;
|
| + bool fPremultiplyAlpha;
|
| + bool fSkipZeros;
|
| + explicit Options(const SkImageDecoder &dec)
|
| + : fDither(dec.getDitherImage())
|
| + , fPremultiplyAlpha(!dec.getRequireUnpremultipliedColors())
|
| + , fSkipZeros(dec.getSkipWritingZeroes())
|
| + { }
|
| + };
|
| +
|
| // Given a dst bitmap (with pixels already allocated) and a src-config,
|
| // prepares iterator to process the src colors and write them into dst.
|
| // Returns false if the request cannot be fulfulled.
|
| bool begin(SkBitmap* dst, SrcConfig sc, const SkImageDecoder& decoder,
|
| const SkPMColor* = NULL);
|
| + bool begin(SkBitmap* dst, SrcConfig sc, const Options& opts,
|
| + const SkPMColor* = NULL);
|
| // call with row of src pixels, for y = 0...scaledHeight-1.
|
| // returns true if the row had non-opaque alpha in it
|
| bool next(const uint8_t* SK_RESTRICT src);
|
|
|