public Bitmap GetBitmapFromView(Android.Views.View view)
        {
            Bitmap bitmap = Bitmap.CreateBitmap(view.Width, view.Height, Bitmap.Config.Argb8888);
            Canvas canvas = new Canvas(bitmap);

            view.Draw(canvas);
            return(bitmap);
        }
        static Bitmap ViewToBitMap(Android.Views.View view)
        {
            var bitmap = Bitmap.CreateBitmap(view.Width, view.Height, Bitmap.Config.Argb8888);

            using var canvas = new Canvas(bitmap);
            canvas.DrawColor(Android.Graphics.Color.Transparent);
            view.Draw(canvas);

            return(bitmap);
        }
        static Bitmap ViewToBitMap(Android.Views.View view, Xamarin.Forms.Color backgroundColor)
        {
            var bitmap = Bitmap.CreateBitmap(view.Width, view.Height, Bitmap.Config.Argb8888);

            using var canvas = new Canvas(bitmap);
            canvas.DrawColor(backgroundColor.ToAndroid());
            view.Draw(canvas);

            return(bitmap);
        }
Beispiel #4
0
        /// <summary>
        /// To the bitmap.
        /// </summary>
        /// <param name="view">The view.</param>
        /// <returns>Android.Graphics.Bitmap.</returns>
        public static Android.Graphics.Bitmap ToBitmap(this Android.Views.View view)
        {
            var bitmap = Bitmap.CreateBitmap(view.Width, view.Height, Bitmap.Config.Argb8888);

            using (var c = new Canvas(bitmap))
            {
                view.Draw(c);
            }

            return(bitmap);
        }
Beispiel #5
0
		public static Bitmap ToBitmap(this AView view)
		{
			var bitmap = Bitmap.CreateBitmap(view.Width, view.Height, Bitmap.Config.Argb8888);
			var canvas = new Canvas(bitmap);
			canvas.Save();
			canvas.Translate(0, 0);
			view.Draw(canvas);
			canvas.Restore();

			return bitmap;
		}
Beispiel #6
0
        public static Bitmap AsBitmap(this Android.Views.View view, Context context, int width, int height)
        {
            DisplayMetrics displayMetrics = new DisplayMetrics();

            view.Measure(displayMetrics.WidthPixels, displayMetrics.HeightPixels);
            view.Layout(0, 0, displayMetrics.WidthPixels, displayMetrics.HeightPixels);

            view.BuildDrawingCache();
            Bitmap bitmap = Bitmap.CreateBitmap(displayMetrics, width, height, Bitmap.Config.Argb8888);

            Canvas canvas = new Canvas(bitmap);

            view.Draw(canvas);

            return(bitmap);
        }
Beispiel #7
0
        public static Bitmap getBitmapFromView(Android.Views.View view)
        {
            Bitmap   returnedBitmap = Bitmap.CreateBitmap(10, 10, Bitmap.Config.Argb8888);
            Canvas   canvas         = new Canvas(returnedBitmap);
            Drawable bgDrawable     = view.Background;

            if (bgDrawable != null)
            {
                bgDrawable.Draw(canvas);
            }
            else
            {
                canvas.DrawColor(Android.Graphics.Color.Black);
            }
            view.Draw(canvas);
            return(returnedBitmap);
        }
Beispiel #8
0
        /// <summary>
        /// Returns a bitmap showing a screenshot of the view passed in
        /// </summary>
        private static Bitmap GetBitmapFromView(Android.Views.View v)
        {
            try
            {
                Bitmap bitmap = Bitmap.CreateBitmap(v.Width, v.Height, Bitmap.Config.Argb8888);
                Canvas canvas = new Canvas(bitmap);

                v.Draw(canvas);

                return(bitmap);
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
            }
            return(default(Bitmap));
        }
Beispiel #9
0
        public async Task <byte[]> Capture()
        {
            await Task.Yield();

            View rootView = CrossCurrentActivity.Current.Activity.Window.DecorView.RootView;

            using (Bitmap screenshot = Android.Graphics.Bitmap.CreateBitmap(
                       rootView.Width,
                       rootView.Height,
                       Android.Graphics.Bitmap.Config.Argb8888))
            {
                Canvas canvas = new (screenshot);
                rootView.Draw(canvas);

                using (MemoryStream stream = new ())
                {
                    screenshot.Compress(Android.Graphics.Bitmap.CompressFormat.Png, 90, stream);
                    return(stream.ToArray());
                }
            }
        }