Index: include/effects/SkBitmapAlphaThresholdShader.h |
diff --git a/include/effects/SkBitmapAlphaThresholdShader.h b/include/effects/SkBitmapAlphaThresholdShader.h |
new file mode 100644 |
index 0000000000000000000000000000000000000000..61596daff3e0bc0bcf8204ce1563f6ae18897360 |
--- /dev/null |
+++ b/include/effects/SkBitmapAlphaThresholdShader.h |
@@ -0,0 +1,24 @@ |
+/* |
+ * Copyright 2013 Google Inc. |
+ * |
+ * Use of this source code is governed by a BSD-style license that can be |
+ * found in the LICENSE file. |
+ */ |
+ |
+#include "SkShader.h" |
+#include "SkBitmap.h" |
+#include "SkRegion.h" |
+#include "SkString.h" |
+ |
+class SK_API SkBitmapAlphaThresholdShader : public SkShader { |
+public: |
+ /** |
+ * Creates a shader that samples a bitmap and a region. If the sample is inside the region |
+ * the alpha of the bitmap color is boosted up to a threshold value. If it is |
+ * outside the region then the bitmap alpha is decreased to the threshold value. |
+ * The 0,0 point of the region corresponds to the upper left corner of the bitmap |
+ * Currently, this only has a GPU implementation, doesn't respect the paint's bitmap |
+ * filter setting, and always uses clamp mode. |
+ */ |
+ static SkShader* Create(const SkBitmap& bitmap, const SkRegion& region, U8CPU threshold); |
+}; |