protected override void onDraw (Canvas canvas) { canvas.drawColor (unchecked((int)0xFFDDDDDD)); Paint paint = new Paint (); paint.setAntiAlias (true); paint.setStyle (Paint.Style.STROKE); paint.setStrokeWidth (10); EmbossMaskFilter mf = new EmbossMaskFilter (new float[] { 1, 1, 1 }, 128, 16 * 2, 4); paint.setMaskFilter (mf); mf.Dispose (); // paint.setMaskFilter(new SkEmbossMaskFilter(fLight, SkIntToScalar(4)))->unref(); // paint.setShader(new SkColorShader(SK_ColorBLUE))->unref(); paint.setDither (true); canvas.drawCircle (50, 50, 30, paint); paint.Dispose (); }
protected override void onDraw (Canvas canvas) { canvas.drawColor (unchecked((int)0xFFDDDDDD)); test_alphagradients (canvas); RectF r = new RectF (0, 0, 100, 100); Paint paint = new Paint (); paint.setDither (true); canvas.save (); canvas.translate (20, 100); Shader.TileMode[] modes = { Shader.TileMode.CLAMP, Shader.TileMode.MIRROR, Shader.TileMode.CLAMP }; foreach (Shader.TileMode tile in modes) { canvas.save (); foreach (GradData data in Grads) { canvas.save (); foreach (GradMaker maker in GradMakers) { using (Shader shader = maker(r, data, tile)) paint.setShader (shader); canvas.drawRect (r, paint); canvas.translate (0, 120); } canvas.restore (); canvas.translate (120, 0); } canvas.translate (Grads.Length * 120, 0); } canvas.restore (); canvas.translate (0, 370); }