#android #bitmap #blur #undo
#Android #растровое изображение #пятно #отменить
Вопрос:
У меня есть кнопка в приложении для обработки изображений, которая при нажатии применяет эффект размытия к изображению в объекте ImageView. Я добился этого, используя встроенный в Android класс под названием ScriptIntrinsicBlur. Моя проблема заключается в отмене эффекта размытия этого изображения при нажатии другой кнопки, чтобы восстановить его в исходное состояние растрового изображения. Код, который применяет размытие к изображению, вот этот..
int radius = 15; BitmapDrawable drawable = (BitmapDrawable)imageView.Drawable; Bitmap original_bitmap = drawable.Bitmap; Bitmap blurred_bitmap = Bitmap.CreateBitmap(original_bitmap); ScriptIntrinsicBlur script = ScriptIntrinsicBlur.Create(renderScript, Element.U8_4(renderScript)); Allocation input = Allocation.CreateFromBitmap(renderScript, original_bitmap, Allocation.MipmapControl.MipmapFull, AllocationUsage.Script); script.SetInput(input); script.SetRadius(radius); Allocation output = Allocation.CreateTyped(renderScript, input.Type); script.ForEach(output); output.CopyTo(blurred_bitmap); output.Destroy(); input.Destroy(); script.Destroy(); //assign the bitmap imageView.SetImageBitmap(blurred_bitmap);
У меня есть еще один обработчик событий кнопки, который должен отменить размытие и восстановить изображение в исходное состояние, есть ли встроенный класс, который позволит мне это сделать, Спасибо за вашу помощь и вклад в этот проект.